数据库范式
简介
数据库范式在数据库设计中的地位一直很暧昧,教科书中对于数据库范式倒是都给出了学术性的定义,但实际应用中范式的应用却不甚乐观,这篇文章会用简单的语言和一个简单的数据库DEMO将一个不符合范式的数据库一步步从第一范式实现到第四范式。
范式的目标
应用数据库范式可以带来许多好处,但是最重要的好处归结为三点:
1.减少数据冗余(这是最主要的好处,其他好处都是由此而附带的)...
分类:
数据库 时间:
2014-06-20 13:25:54
阅读次数:
262
【程序1】
题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第四个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子有多少对?算法一:public
class ArithmeticTest1 { public static void main(String[]...
分类:
其他好文 时间:
2014-06-10 11:23:15
阅读次数:
153
前面说了一些Google API的介绍,但是在实际的开发当中,我们可能需要把Google RESTful API返回的JSON数据转换成XML数据输入到第三方系统,这在企业应用集成里面非常的常见。那么里面就有一个问题,如何确保转换后的XML数据格式是规范的,这就需要XSD的Schema来进行校验。现在关键是,我们只知道Google API的JSON的schema,但是Google RESTful并没有提供返回数据的XML的schema,那么XML的Schema将会是什么样子的呢?让我以Google Task...
古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?package
Test;/** * 斐波拉契数列问题(兔子问题) * 可推导递推公式 * f(n+1)=f(n)+f(n-1) * */public cla...
分类:
其他好文 时间:
2014-06-10 00:06:37
阅读次数:
295
http://poj.org/problem?id=1699
题意:给出n个只含A,C,G,T的字符串,要求能把这n个字符串组合起来的最短长度。
思路:预处理一下,a[i][j]表示将第j个字符串连接到第i个字符串后面增加的长度,那么我们需要找出这样一个序列1,2....n满足a[1][2] + a[2][3] + ...+a[n-1][n]的最小值。DFS就OK了,任选一个字...
分类:
其他好文 时间:
2014-06-08 17:49:21
阅读次数:
199
约瑟夫问题,循环链表实现
问题描述:
n 个人围成一个圆圈, 首先第 1 个人从 1 开始一个人一个人的顺时针报数,报到第 报到第 m 个人, 令其出列。 然后再从下一 个人开始从 1 顺时针报数 , 报到第 m 个人, 再令其出列,如此下去 , 求出列顺序。...
分类:
其他好文 时间:
2014-06-08 15:02:43
阅读次数:
188
Sublime Text
2包含了大量快捷操作,而且还很方便修改和追加自己喜欢的快捷键。查看快捷键的方式也很简单: 点击菜单栏:Preferences->Key Bindings
–Defaults 即可查看。快捷键:打开/前往Ctrl+P:搜索项目中的文件Ctrl+G:跳转到第几行Ctrl+R:....
分类:
其他好文 时间:
2014-06-08 06:31:38
阅读次数:
210
求两个排序数组的中位数。这个题可以有以下几个思路:
首先可以想到的是将两个数组merge起来,然后返回其中位数。
第二个是,类似merge的思想加上计数,找到(m+n)/2个数或者其前后的数,这个就可以算出中位数。这个方法对于各种情况需要一一考虑到。
第三个,假设A[k/2-1]<B[k/2-1],那么A[k/2-1]之前的数一定在整个有序数列中(m+n)/2之前。
这里我给出后面两种思路的代码。
代码一( 思路三)...
分类:
其他好文 时间:
2014-06-08 03:44:47
阅读次数:
231
快速使用vim格式化代码 在vim的编辑模式i下直接ESC退出道命令模式之后直接敲入如下命令:
gg=G 将全部代码格式化 nG=mG 将第n行到第m行的代码格式化 注:如果ESC之后输入的是 :gg=G
即前面加了个分号‘:’那么就会有不是编辑器命令的提示。 快速说明 格式化全文指令 gg=G 自...
分类:
其他好文 时间:
2014-06-08 01:21:38
阅读次数:
483
题目大意:
三个操作。
1. 合并两个集合
2.把第一个元素放到第二个集合里
3.输出集合的数量和和。。
思路分析:
要用p记录这个元素所在集合编号,然后用编号建立并查集。
#include
#include
#include
#include
using namespace std;
typedef long long LL;
int set[111111...
分类:
其他好文 时间:
2014-06-07 12:52:40
阅读次数:
267