LenleDaytoy

2020年4月16日

常见排序算法-希尔排序、插入排序

摘要: 希尔排序 先将整个待排序列根据不同增量间隔依次分割成为若干子序列,分别进行直接插入排序。待整个序列中的记录基本有序时,再对全体记录进行一次直接插入排序。 1 def shellSort(arr): 2 step=len(arr)//2 3 while step>0: 4 for i in range 阅读全文

posted @ 2020-04-16 16:35 LenleDaytoy 阅读(116) 评论(0) 推荐(0) 编辑

常见排序算法-归并排序

摘要: 归并排序 归并排序是利用递归将数据序列划分为越来越小的半子表,再对半子表排序,最后再用递归步骤将排好的半子表合并为有序序列。 算法步骤: 申请空间,使其大小为两个已经排序序列之和,该空间用来存放合并后的序列 设定两个指针,最初位置分别为两个已经排序序列的起始位置 比较两个指针所指向的元素,选择相对小 阅读全文

posted @ 2020-04-16 16:00 LenleDaytoy 阅读(87) 评论(0) 推荐(0) 编辑

常见排序算法-快排

摘要: 快速排序 算法步骤: 首先,从数列中挑出一个元素,作为基准值 然后重新排序数列,将比基准值小的元素摆放在基准前面,比基准值大的摆在基准的后面(相同的数可以到任一边)。 再递归地把小于基准值元素的子数列和大于基准值元素的子数列按照同样的方法排序。 递归的最底部情形,是数列的大小是零或一,也就是永远都已 阅读全文

posted @ 2020-04-16 14:56 LenleDaytoy 阅读(137) 评论(0) 推荐(0) 编辑

导航