摘要:
约束是一种限制,它通过对表的行或列的数据做出限制,来确保表的数据的完整性、唯一性。MYSQL中,常用的几种约束:约束类型:主键默认值唯一外键非空关键字:PRIMARY KEYDEFAULTUNIQUEFOREIGN KEYNOT NULL===============================... 阅读全文
posted @ 2015-05-27 23:46
niceforbear
阅读(18507)
评论(0)
推荐(2)
摘要:
Linux上检查MYSQL是否安装: $ sudo service mysql startUbuntu Linux安装配置MYSQL: $ sudo apt-get install mysql-server $ sudo apt-get install mysql-client安装结束后,用命... 阅读全文
posted @ 2015-05-27 22:33
niceforbear
阅读(3235)
评论(0)
推荐(0)
摘要:
基数排序是跟前面的几种排序算法完全不一样的排序算法,前面的排序算法主要通过关键字之间的比较和移动来实现,而基数排序不需要进行关键字之间的比较,它是借助多关键字的思想来实现的。对于数字,每一位上的数字就是一个关键字,每一位的数字范围就是关键字范围,它的主要过程为:将所有待比较数值(正整数)统一为同样的... 阅读全文
posted @ 2015-05-27 22:23
niceforbear
阅读(864)
评论(0)
推荐(0)
摘要:
归并排序是建立在归并操作上的一种有效的排序算法,时间复杂度是O(nlogn)。它过程为:比较a[i]和a[j]的大小,若a[i]≤a[j],则将第一个有序表中的元素a[i]复制到r[k]中,并令i和k分别加上1;否则将第二个有序表中的元素a[j]复制到r[k]中,并令j和k分别加上1,如此循环下去,... 阅读全文
posted @ 2015-05-27 22:19
niceforbear
阅读(235)
评论(0)
推荐(0)
摘要:
堆排序就是利用了最大堆(或最小堆)堆顶记录的关键字最大(或最小)这一特征,使得在当前无序区中选取最大(或最小)关键字变得简单。以最大堆为例,它的基本思想就是:先将初始文件R[1..n]建成一个最大堆,此堆为初始的无序区;再将关键字最大的记录R[1](即堆顶)和无序区的最后一个记录R[n]交换,由此得... 阅读全文
posted @ 2015-05-27 22:16
niceforbear
阅读(285)
评论(0)
推荐(0)
摘要:
选择排序中的两个经典算法:简单选择排序,堆排序。简单选排:通过n-1次数据元素的比较,从n-i+1个记录中选择最小的数据,并与第i个数据进行交换,它的时间复杂度是O(n^2)。堆排序:利用堆的特征进行排序,复杂度为O(n*logn)。 1 #include 2 #include 3 4 int... 阅读全文
posted @ 2015-05-27 22:13
niceforbear
阅读(214)
评论(0)
推荐(0)
摘要:
希尔排序也是插入排序的一种,但是它效率高于直接插入排序。基本思想是:首先取一个小于n的整数d1作为第一个增量,把文件的全部记录分组。所有距离为d1的倍数的记录放在同一个组中。先在各组内进行直接插入排序;然后,取第二个增量d2 2 #include 3 4 int n; 5 6 /* 7 * ... 阅读全文
posted @ 2015-05-27 21:46
niceforbear
阅读(408)
评论(0)
推荐(0)
摘要:
每次从无序表中取出第一个元素,把它插入到有序表的合适位置,使有序表仍然有序。第一趟比较前两个数,然后把第二个数按大小插入到有序表中;第二趟把第三个数据与前两个数从前向后扫描,把第三个数按大小插入到有序表中;依次进行n-1趟扫描后就完成了整个排序过程 1 #include 2 #include 3... 阅读全文
posted @ 2015-05-27 21:31
niceforbear
阅读(288)
评论(0)
推荐(0)
摘要:
快速排序是对冒泡排序的改进,它的基本思想是通过一趟排序将数据分成两部分,一部分中的数据都比另一部分中的数据小,再对这两部分中的数据再排序,直到整个序列有序,如下图所示。快排的递归实现: 1 #include 2 #include 3 4 int n; 5 6 /* 7 * 分割使枢轴记录的... 阅读全文
posted @ 2015-05-27 16:22
niceforbear
阅读(286)
评论(0)
推荐(0)
摘要:
冒泡排序的主要过程:比较相邻的元素。如果第一个比第二个大,就交换他们两个。对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。比较一趟之后,最后的元素应该会是最大的数。针对所有的元素重复以上的步骤,除了最后一个。持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。 1 #i... 阅读全文
posted @ 2015-05-27 16:19
niceforbear
阅读(255)
评论(0)
推荐(0)
摘要:
通常我们查找数据都是通过一个一个地比较来进行,有一种方法,要寻找的数据与其在数据集中的位置存在一种对应的关系,通过这种关系就能找到数据的位置。这个对应关系成为散列函数(哈希函数),因此建立的表为散列表(哈希表)。散列查找是关键字与在数据集中的位置一一对应,通过这种对应关系能快速地找到数据,散列查找中... 阅读全文
posted @ 2015-05-27 16:06
niceforbear
阅读(4318)
评论(0)
推荐(0)
摘要:
二分查找是只适用于有序的序列,每次都缩小一半查找范围的查找方法。二分查找也叫做折半查找。步骤:首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置将表分成前后两个子表。重复以上步骤。 1 #include 2 #include 3 4... 阅读全文
posted @ 2015-05-27 15:24
niceforbear
阅读(480)
评论(0)
推荐(0)

浙公网安备 33010602011771号