排序算法
罗罗的1024
做个幸福的小吃货
展开
-
快速排序
快速排序由C. A. R. Hoare在1960年提出。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。 排序演示 假设一开始序列{xi}是:5,3,7,6,4,1,0,2,9,10,8。 此时,ref=5,i=1,j=11,从后往前找,第一个比5小的数是x8=2,因此序列为:2,3,7,6,4,1,0,5,9,10,8。 此时i=1,j=8原创 2020-11-22 14:26:59 · 258 阅读 · 2 评论 -
冒泡排序
原理:依次比较相邻的两个元素,交换大小 思路:依次比较相邻的两个数,将小数放在前面,大数放在后面。假设在第一轮:首先比较第1个和第2个数,将小数放前,大数放后。然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后。重复第一轮步骤,直至全部排序完成。 注意:第一轮结束后,最大值在数组的最后一位,所以第二轮最后一位就不参与比较 假设三个数,423,交换的次数是两次,那么长度为N的数组,交换次数就是N-1次 int[] arr = {9,8,5,7};//需要排序的原创 2020-07-23 08:40:02 · 430 阅读 · 0 评论