首先 我们要分清楚一些概念和他们之间的关系 数组(array)  表(list)  链表(linked list)  数组链表(array list)   队列(queue)  栈(stack) list列表 array数组 python中内置list数据结构 存放的数据类型可以不同. 但是有个缺点 list存放的是数据的索引也就是指针 这需要数据的原有存储加上数据的指针 增加了消耗 python中numpy库的array 存放单一类型数据 python中数组并不是基本数据类型 但是可以调用ar…
列表作为栈使用 Python列表方法使得列表作为堆栈非常容易,最后一个插入,最先取出(“后进先出”).要添加一个元素到堆栈的顶端,使用 append() .要从堆栈顶部取出一个元素,使用 pop() ,不用指定索引.例如 >>> stack = [3, 4, 5] >>> stack.append(6) >>> stack.append(7) >>> stack [3, 4, 5, 6, 7] >>> stack.p…
把列表当做队列使用,只是在列表中第一个加入的元素,第一个提取出来,拿列表当做队列用,效率并不高.在列表中最后添加或者删除元素速度很快,然而从列表里插入或者从头弹出速度却不快,因为其他所有元素都要一个一个移动. 1 from collections import deque 2 3 queue = deque(['Eric','John','Michael']) #定义队列 4 5 queue.append('Terry') #将字符串Terry追加到队列末尾 6 print(queue) #打印…
1.Python列表是Python内置的数据结构对象之一,相当于数组 2.列表用[] 包含,内有任意的数据对象,每一个数据对象以 ,逗号分隔,每隔数据对象称之为元素 3.Python列表是一个有序的序列 4.Python列表支持任意的嵌套,嵌套的层次深度没有限制 总结:列表是一个Python的数据结构,用[] 来表示,可以存储任何对象的一个有序序列 作用:存放各种类型的数据,并有序排列 定义: a = list() a [] b = [] b [] c = list('c') c ['c'] 列…
# 栈# 其实python里面的list就可以当栈使用啦,用collections.deque也可以# 1. 入栈 list.append(item)# 2. 出栈 item = list.pop()# 3. 对于首元素出栈,还可以 item = list.pop(0) 和队列概念一样# 4. 其实还可以任意元素出栈 item = list.pop(i) 相当于删除第i个元素# 注意3,4是很耗时间的 栈可以方便用来判断一个字符串是否回文. 下面是基于栈的回文判断算法 # 判断一个字符串是否回文…
一位大牛Niklaus Wirth曾有一本书,名为<Algorithms+Data Structures=Programs>,翻译过来也就是算法+数据结构=程序.而本文就是介绍一下Python中内建的三种数据结构----列表.元组以及字典. 列表 列表是处理一组有序项目的数据结构,即你可以在一个列表中存储一个 序列 的项目. 1.list函数 因为字符串不能像列表一样被修改,所以有时候根据字符串创建列表就很有用了,list可以实现这个操作: >>>list("Hel…
在Python中有三种内建的数据结构——列表list.元组tuple和字典dict 列表中的项目包括在方括号中,项目之间用逗号分割 元组和列表十分类似,只不过元组和字符串一样是不可变的 即你不能修改元组.元组通过圆括号中用逗号分割的项目定义. 元组最通常的用法是用在打印语句中 age = 22 name = 'Swaroop' print '%s is %d years old' % (name, age) print 'Why is %s playing with that python?'…
散列表的实现常常叫做散列(hashing).散列仅支持INSERT,SEARCH和DELETE操作,都是在常数平均时间执行的.需要元素间任何排序信息的操作将不会得到有效的支持. 散列表是普通数组概念的推广.如果空间允许,可以提供一个数组,为每个可能的关键字保留一个位置,就可以运用直接寻址技术. 当实际存储的关键字比可能的关键字总数较小时,采用散列表就比较直接寻址更为有效.在散列表中,不是直接把关键字用作数组下标,而是根据关键字计算出下标,这种 关键字与下标之间的映射就叫做散列函数. 1.散列函数…
排序: 1:整理顺序 #冒泡 lista = [5,7,11,19,99,63,3,9,1] list = [] while lista != []: number = 0 for i in lista: if number < i: number = i lista.remove(number) list.append(number) print(list) 打印结果: D:\untitled\1\venv\Scripts\python.exe D:/untitled/1/venv/main.…
列表:shoplist = ['apple', 'mango', 'carrot', 'banana']字典:di = {'a':123,'b':'something'}集合:jihe = {'apple','pear','apple'}元组: t = 123,456,'hello' 1.列表--------------------------------------------------------------------------------------    空列表:a=[]    函…