排序算法
天空有片云
这个作者很懒,什么都没留下…
展开
-
选择排序
选择排序:一般的与冒泡排序不同,他的最坏时间复杂度和最坏时间按复杂度是相等的,都是 O(n2),算法的实行方面,冒泡算法可以通过一次比较就能得出列表结果,算法稳定性比选择算法稳定,而选择排序需要每个列表内的元素依次比较才能得出列表,时间复杂度不会改变。def selection_sort(alist): n = len(alist) # 需要进行n-1次选择操作 for ...原创 2019-05-24 15:02:21 · 91 阅读 · 0 评论 -
插入排序
插入排序:与冒泡排序一样,但是算法逻辑不同,两者相同之处在于时间复杂度最优和最坏相同,具体逻辑思维看下面代码。def insert_sort(alist):# 从第二个位置,即下标为1的元素开始向前插入 for i in range(1, len(alist)):# 从第i个元素开始向前比较,如果小于前一个元素,交换位置 for j in range(i, 0, -...原创 2019-05-24 16:39:31 · 97 阅读 · 0 评论 -
冒泡排序
**冒泡排序:**在一个列表中,我们拥有一组无序的数组,通过固定的算法比较,这个算法的最优时间复杂度是O(n),最坏时间复杂度是O(n^2),通常,冒泡排序的算法是通过一个一个一个的数值相继比较,一个数比较完,然后下一个数,(是累加的复杂度,不是阶乘),就像遍历一样,遍历完了,位置交换完了进行下一次遍历,直到结束。def bubble_sort(alist):for j in range(le...原创 2019-05-23 23:54:47 · 95 阅读 · 0 评论 -
倒排索引
倒排索引简介:倒排索引是一种索引方法,常被用于全文检索系统中的一种单词文档映射结构。现代搜索引擎绝大多数的索引都是基于倒排索引来进行构建的,这源于在实际应用当中,用户在使用搜索引擎查找信息时往往只输入信息中的某个属性关键字,如一些用户不记得歌名,会输入歌词来查找歌名;输入某个节目内容片段来查找该节目等等。倒排索引又叫反向索引,它是一种逆向思维运算,是现代信息检索领域里面最有效的一种索引结构。...原创 2019-06-11 20:29:33 · 164 阅读 · 0 评论