随笔分类 - 算法
摘要:归并排序(Merging Sort)就是将两个或两个以上的有序表合并成一个有序表的过程。将两个有序表合并成一个有序表的过程称为2-路归并,2-路归并最为简单和常用。 算法思想: 假设初始序列含有n个记录,则可看成是n个有序的子序列,每个子序列的长度为1,然后两两归并,得到[ n/2 ]个长度为2或1
阅读全文
摘要:交换排序的基本思想是:两两比较待排序记录的关键字,一旦发现两个记录不满足次序要求时则进行交换,直到整个序列全部满足要求为止。 交换排序算法分为冒泡排序和快速排序 冒泡排序(Bubble Sort)是一种最简单的交换排序方法,它通过两两比较相邻记录的关键字,如果发生逆序,则进行交换,从而使关键字小的记
阅读全文
摘要:插入排序算法分为直接插入、折半插入和希尔排序 1.直接插入排序 直接插入排序是一种最简单的排序方法,其基本操作是将一条记录插入到已排好序的有序表中,从而得到一个新的、记录数量增1的有序表。 算法步骤 (1)设待排序的记录存放在数组list[1....n]中, (2)循环n-1次,每次使用顺序查找法,
阅读全文
摘要:二分搜索算法的基本思想是将n个元素分成个数大致相同的两半,取a[n/2]与x进行比较。如果X=a[n/2],则找到x,算法终止。如果x<a[n/2],则只要在数组a的左半部继续搜素X。如果X>a[n/2],则只要在数组a的右半部继续搜索x。具体算法可描述如下:
阅读全文

浙公网安备 33010602011771号