摘要:
基本思想 归并排序是建立在归并操作上的一种有效的排序算法。 该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。 将一个数组分为越来越小的子列表,每个子列表单独进行排序,然后合并形成更大的有序列表。 通过归并子列表元素来合并子列表就是归并排序(Merge Sort) 代码 阅读全文
摘要:
基本思想 通过使用一个基准值将列表分为2个子列表,具体的过程是: 将基准值放在正确的位置上,在一个子列表中放入小于基准值的元素,另一个子列表中放入大于基准值的元素。 这就是快速排序(Quick Sort)的思想。 快排算法提供了目前已知最快的排序技术,除了某些极其特殊的情况下之外,快速排序徐几乎适用 阅读全文
摘要:
基本思想 冒泡排序的基本概念是依次比较相邻的两个元数,将小的数放在前面,大的数放在后面。 即在第一趟排序中,首先比较第1个数和第2个数,将小数放前,大树放后; 然后比较第2个数和第3个数,将小数放前,大数放后。以此类推,如此继续,直到比较最后两个数,将小数放前,大数放后。至此,第一趟排序结束,将最大 阅读全文
摘要:
基本思想 通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应的位置并插入。 插入排序非常类似于整扑克牌。 在开始摸牌时,左手是空的,牌面朝下放在桌上。接着,一次从桌上摸起一张牌,并将它插入到左手一把牌中的正确位置上。为了找到这张牌的正确位置,要将它与手中已有的牌从右到左地进行比较 阅读全文