![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法与数据结构
每天进步亿点点~
stay hungry, stay foolish!
展开
-
冒泡排序:python实现及优化
冒泡排序原理从第一个元素开始(可以从第一个,也可以从最后一个),相邻两两元素进行比较大小,将较大的那个往后移动,否则,两个元素位置不变;直到将最大的元素排到最后面;接着再次循环上述过程,从头开始,依次两两元素比较,而上依次循环中已经排好的元素(即已经排到最后面的元素)就不用参与比较了。python实现根据冒泡排序的定义,我们可以用python代码实现def bubble_sort(it...原创 2019-06-25 17:30:52 · 1057 阅读 · 0 评论 -
选择排序:python实现
原理每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到全部待排序的数据元素排完。python实现def selection_sort(arr): for i in range(len(arr)-1): min_index = i f...原创 2019-06-26 16:44:49 · 5558 阅读 · 1 评论 -
插入排序:python实现及优化
原理通过构建有序序列,对于未排序的数据,在已排序的序列中,从后向前扫描,找到相应位置并插入。python实现步骤1、默认把第一个元素看作有序序列。2、从第二个元素开始遍历,依次将元素与上一个元素比较,如果小于,则将上一个元素向后挪一个位置;如果相等,位置想对不变。3、继续与上上一个位置的元素比较,直到找到比它小的元素,将其插入在该元素的后面即可。(注意交换和插入动作在代码实现上的...原创 2019-06-30 17:34:14 · 1071 阅读 · 1 评论