
排序算法
WXL570CN
这个作者很懒,什么都没留下…
展开
-
Python排序算法之冒泡排序
理解依然是百度解释:它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果他们的顺序(如从大到小、首字母从A到Z)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素列已经排序完成。我的理解:每次遍历列表,都得到一个最大的数,这就是冒泡。代码实现def bubbleSort(a): l = len(a) for i ...原创 2019-10-20 22:38:25 · 225 阅读 · 0 评论 -
Python排序算法之插入排序
理解还是百度解释:插入排序的基本操作就是将一个数据插入到已经排好序的有序数据中,从而得到一个新的、个数加一的有序数据。我的理解:嗯,也就百度说的那样了。。。代码实现上代码:# 确定要得到的是一个升序列表# 首先将第一个视为已排好序,然后从第二个元素开始遍历列表# 将当前遍历到的元素分别与前面已排好序的列表从后往前比较# 小于则交换,大于则确定位置def...原创 2019-10-20 22:25:02 · 177 阅读 · 0 评论 -
Python排序算法之归并排序
理解首先还是引用百度解释:将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为二路归并。归并排序是一种稳定的排序方法。我的理解是:将一个列表对半分成左右两个子列表,再分别对左右子列表继续对半分,不断对半分,直到分成左右子列表各一个元素时结束,这时每个子列表都是有序的(一个元素当然有序),再对左右两个有序列表合并成一...原创 2019-10-20 16:57:39 · 311 阅读 · 0 评论 -
Python排序算法之快速排序
理解最近参加了几场笔试,基本都问到排序问题,深感自己算法这方面薄弱,于是准备好好搞一搞这排序算法。正好老早就有了写博客的想法,嗯,那就开搞吧。首先引用一下百度的说法:快速排序(Quicksort)是对冒泡排序的一种改进。快速排序由C. A. R. Hoare在1960年提出。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据...原创 2019-10-20 13:32:08 · 200 阅读 · 0 评论