排序知识
JayBillions
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
快速排序实现
最近在学习排序算法,网上快速排序教程很多,看了不少,有很多思想讲解非常精彩细致,但代码运行好像有问题,自己选择了一种比较容易接受的排序思想进行学习。 一.思想 1.选择一个基准数(基准数就是数组元素之间相互比较的一个参考系),一般选择最左边的数和最右边的数作为基准; 2.如果是从小到大的排序,则按照一定的方法(这个方法就会使用到基准数,和基准数进行比较)将比基准数小的数放在基准数左边,将比基准数大的数放在基准数右边; 3.当一轮排序结束后,基准数左边的数比基准数小,基准数有的数比基准数大; 4.将原创 2020-07-04 13:27:15 · 233 阅读 · 0 评论 -
简单选择排序
一.简单选择排序思想 思想:对于一个普通数列 int[] arr ={arr[0],arr[1],......,arr[n-1],arr[n]} ,对其进行arr.length趟排序,每次排序找出无序数列中最小的数,放在有序数列的末尾。若无序数列中最小的一位数为无序数列中的第一位数,则不进行交换;若不是,则将找出的最小数与无序数列的第一位数进行交换。 举例:对于数组 int[] arr ={23,12,45,6,65,3,9,7} 第一次排序时:初始数列可看作无序数列,则找出整个数组中最小的原创 2020-07-02 11:25:12 · 257 阅读 · 0 评论 -
插入排序练习
一.插入排序的思想 思想:将需要进行排序的数看作两部分:有序数列和无序数列,通常以第一个数为有序数列,从第二个数开始到最后的数看做无序数列,将无序数列中的数逐个添加到有序数列中,直至整个数列为有序状态。 二.方式一 将需要插入的数逐个与有序数列中的数进行比较,若不满足有序状态则进行交换,交换完之后再进行比较,继续交换;若满足,则不交换。整体效果有点类似向前的冒泡排序。 例:8,2,4,9,3,6,5,1进行从小到大的排序 将8看作有序数列,将2,4,9,3,6,5,1看作无序数列,分别将2,4,9原创 2020-07-01 16:44:49 · 916 阅读 · 0 评论
分享