数据结构与算法
wei_xin1234567
这个作者很懒,什么都没留下…
展开
-
归并排序
文章目录概念示意图代码实现概念先将数据拆分成最小单元,然后比较大小,组合起来示意图代码实现def merge_sort(lst): if len(lst) <=1: return lst half = len(lst)//2 left_lst = merge_sort(lst[:half]) right_lst = merge_so...原创 2019-11-26 16:27:58 · 158 阅读 · 0 评论 -
快速排序
文章目录概念示意图代码实现概念一般把第一个数作为基准值将数据分区,与基准值对比大小。小的一边,大的一边2边数据递归调用示意图第一次划分结束后,将剩下的2组数据(23,12,7) 和 (78,45),分别进行快速排序代码实现def quick_sort(lst,start,end): if start >= end: return low =...原创 2019-11-26 15:42:55 · 177 阅读 · 0 评论 -
希尔排序
文章目录概念示意图代码实现概念gap每次分半,直到最小值1循环,下标i从 gap到n对比下标i与i-gap的值不稳定,最坏O(2)示意图代码实现lst = [2,7,4,0,5]def xier_sort(lst): n = len(lst) gap = n//2 while gap >= 1: for i in range(gap...原创 2019-11-26 15:08:28 · 144 阅读 · 0 评论 -
插入排序
文章目录概念示意图代码实现概念将未排序的数中,依次插入到已排序的数中最坏时间复杂度O(n2)示意图代码实现def insert_sort(lst): for i in range(1,len(lst)):#控制循环次数 for j in range(i,0,-1):#从i的位置往前比较 if lst[j]<lst[j-1]:#如果...原创 2019-11-23 22:12:18 · 110 阅读 · 0 评论 -
选择排序
文章目录概念示意图代码实现概念在未排序的数中选择最大或最小放在基准元素位置示意图代码实现def select(lst): for i in range(len(lst)-1): #控制外部大循环次数 min_idx = i #定义最小值的索引为i for j in range(i+1,len(lst)): #内部循环 i...原创 2019-11-23 21:31:56 · 121 阅读 · 0 评论 -
链表
文章目录链表的结构链表的结构不需要用连续的存储单元单链表尾节点next为空循环链表双向链表原创 2019-11-17 18:09:21 · 160 阅读 · 0 评论 -
冒泡排序
文章目录概念代码实现概念1 一次比较2个元素,如下图所示。2 如果左边的数比右边大,则交换位置3 经过一次排序后,7被放到最后的位置4 对剩下的5个数进行排序,最坏情况还要经过4次排序得到最终结果5 总共需要经过n-1次排序6 这样的排序叫冒泡排序代码实现l = [5,2,1,3,7,6]def fn(lst): for j in range(1,len(lst)...原创 2019-11-16 16:29:31 · 118 阅读 · 0 评论 -
栈和队列
文章目录栈普通队列双端队列阻塞队列栈普通队列先进先出代码实现class _Queue(): def __init__(self): self.__item = [] def is_empty(self): return self.__item == [] def add(self,item): """入队"""...原创 2019-11-16 15:27:28 · 179 阅读 · 0 评论 -
顺序表
文章目录形式公式L~n~ = L~0~ + n*c结构Python列表形式基本顺序表元素存放空间大小相同存储的是元素的值元素外置顺序表解决元素存放空间大小不一致索引存储的是元素的地址公式Ln = L0 + n*cLn第n个元素首地址n是偏移量 c是固定长度L0 初始位置从1开始,则Ln=L1 + (n-1) * c , CPU会多进行一...原创 2019-11-07 15:31:23 · 373 阅读 · 0 评论 -
数据结构和算法
数据结构和算法数据结构存储数据的结构数据的排列组合算法的引入优化,提高效率循环举例,a+b+c=1000,且 a2+b2=c^25大特性输入输出有穷确切(确定的含义)可行(有效)算法效率衡量靠时间?测试环境?数据量?大O复杂度T(n)=O(f(n))n 数据量T(n) 执行n数据量的时间f(n) 执行次数O T与f成正比表示一种...原创 2019-11-07 14:53:33 · 304 阅读 · 0 评论