对序列{15,9,7,8,20,-1,4}进行排序,进行一趟后数据的排列变为{4,9,-1,8,20,7,15};则采用的是()排序
A.选择
B.快速
C.希尔
D.起泡
正确答案是 C
只会写初级sql的我看不大懂
经典的快排 默认Key值为array[0] 也就是15 从index i= 1 从左右厉遍和j = array.length-1向左厉遍(i<=j) 向右 找打大于key值的值 向左找到小与key值的值 交换 将key与i停留位置交换 这是第一遍过程 这里就是 向右找到20 向左找到·4 20 和 4 交换 i在4此时的位置 4 和key值 15交换 得出第一次结果
C,步长为3的希尔排序
排除就好了,迅速扫描一下,最大的不再最后,最小的不再最前,肯定排序冒泡和选择;再次扫描,不是俩个有序数列,排除选择。所以就是希尔。咋样之间看出来增量是三呢?观察前后不一样的数字,发现 15,4-》4,15 ; 假设增量为6,验证不对。 7,-1,-》-1,7;假设增量为3,对啦。所以.....
使用js实现数组的快速排序
一棵具有n个结点的二叉树,若它有m个叶子结点,则该二叉树中度为1的结点个数是多少?
如何理解PV、UV、IP
cookies,sessionStorage 和 localStorage 的区别?
只会写初级sql的我看不大懂
经典的快排
默认Key值为array[0] 也就是15
从index i= 1 从左右厉遍和j = array.length-1向左厉遍(i<=j)
向右 找打大于key值的值 向左找到小与key值的值 交换
将key与i停留位置交换
这是第一遍过程
这里就是
向右找到20 向左找到·4
20 和 4 交换
i在4此时的位置
4 和key值 15交换
得出第一次结果
C,步长为3的希尔排序
排除就好了,迅速扫描一下,最大的不再最后,最小的不再最前,肯定排序冒泡和选择;再次扫描,不是俩个有序数列,排除选择。所以就是希尔。咋样之间看出来增量是三呢?观察前后不一样的数字,发现 15,4-》4,15 ; 假设增量为6,验证不对。 7,-1,-》-1,7;假设增量为3,对啦。所以.....