算法
「已注销」
学生党一枚,写博客记录学习过程,望多多指教!
展开
-
快速排序
快速排序算法步骤找一个基准值,将这个基准值放在正确的位置上,也就是左边的都比它小,右边都比它大,至于左右两边的顺序先不管。此时数列已经被分为了两个部分,再在左右两边重复第一步,直到数列的顺序被排好。动图演示代码实现def quick_sort(ls,left,right): if left>right: #递归停止的条件 return c...原创 2020-02-07 20:31:48 · 129 阅读 · 0 评论 -
希尔排序
希尔排序前言说到希尔排序,就不得不说到插入排序,插入排序有一个缺点,那就是对于有序性高的序数列,排序效果好,也就是速度快,但对于无序性高的数列来说,插入排序的速度就会很慢。为什么呢?因为,每次从无序数列中向有序数列插入时,都要依次从后往前和有序数列中的每一个数比较这样的话,效率就比较低。这也就解释了为什么,对于有序性高的竖列,排序速度就会快一些。但实际情况中,不是说你想怎么样就怎么样的,于是就...原创 2020-02-05 14:28:20 · 399 阅读 · 0 评论 -
插入排序
插入排序算法步骤这个算法比较好理解,说白了,和你打扑克牌时理牌几乎是一样的把第二张抽出来和第一张比较,小就放到第一张前面这时前两张就已经排好序了,再将第三张抽出从后往前和前两张比较,比哪张小,就放到哪张前面这时前三张就已经排好序了,再将第四张抽出从后往前和前三张比较,比哪张小,就放到哪张前面:::如此循环往复,直到排好图解算法代码实现原理很简单,但代码有...原创 2020-02-03 22:41:46 · 98 阅读 · 0 评论 -
选择排序
选择排序算法步骤找到序列中的最小数,放到序列的起始位置再从剩余的序列中继续寻找最小的数重复以上步骤,你将得到按冲小到大排序的序列图解算法代码实现# 选择排序## 算法步骤1. 找到序列中的最小数,放到序列的起始位置2. 再从剩余的序列中继续寻找最小的数3. 重复以上步骤,你将得到按冲小到大排序的序列## 图解算法![选择排序](C:\Users\Admini...原创 2020-02-03 18:27:06 · 77 阅读 · 0 评论 -
冒泡排序
算法步骤从第一个数开始,依次前一个数与后一个数比较大小,当后一个数比前一个数小时,两个数交换当第n-1个数与第n个数比较完后,停止比较再从第一个数开始,重复以上步骤直到所有数按从小到大的顺序排列图解算法代码实现ls=[3,5,15,26,36,38,46,44,2,]def bubble_sort(ls): for i in range(len(ls)): ...原创 2020-02-02 21:55:11 · 112 阅读 · 0 评论