首页 > TAG信息列表 > 标兵
快速排序 java
快速排序 原理代码实现声明 原理 快速排序主要是运用到了递归的思想。每轮排序都会有一个基准数(一般取数组中间的数),同时左右俩边会有俩个标兵。左标兵向右扫描,右标兵向左扫描。结合下图来看。 这是我自己构造的一个数组,和俩个标兵。这里的基准数选取的是value =C++ 插入排序
基本原理 设置第一个元素为有序区域,有序区域之后的第一个元素设为“标兵”。 反向遍历有序区域,如果“标兵”小于其中的某一元素,则使该元素右移。 当“标兵”大于某一元素时,将“标兵”插入该位置(因为是有序区域,“标兵”前面的数据一定是有序排列的)。 更新有序区域和“标兵”, 持续C++ 选择排序
基本原理 选择排序的原理其实和冒泡排序很像,都是两层循环嵌套: 设第一个元素为“标兵”,“标兵”的值为最小值,index 为最小值的 index 。 遍历第一个元素之后的所有元素,若找到更小的值,则更新最小值和 index 。 交换“标兵”和最小值,实现将最小值放在第一位,“标兵”后移,更新“标兵”