python数据结构
文章平均质量分 75
Raymond_桐
这个作者很懒,什么都没留下…
展开
-
python数据结构——(6)树及其应用
树的概念 相较于之前说明的栈、队列、表等线性结构,本次说明的“树”是一种非线性结构。树的结构被分成三部分:根、枝和叶。树当中有很多概念,在这里我们列表说明。 定义 说明 节点 Node 每个节点都有名称,每个节点还可以保存数据 边 Edge 边具有出入方向,父节点到子节点,子节点到父节点不一样 根 Root 唯一一个没有入边的节点 路径 path 一个节点到根节点,由边依次连接在一起的节点的“有序列表” 子节点 Children / 父节点 parent 这两个概念是相互的,原创 2021-07-19 22:48:08 · 422 阅读 · 1 评论 -
python数据结构——(5)查找与排序
查找 顺序查找 顺序查找,就是从列表List[0]开始,逐个比对item与List[n]的大小,直到找到item。找不到则返回False。 无序表实现代码: # 无序表查找 def seqentialSearch(alist, item): pos = 0 found = False while pos < len(alist) and not found: if alist[pos] == item: found = Tr原创 2021-07-14 23:15:22 · 239 阅读 · 1 评论 -
python数据结构——(4)递归及其应用
递归概念 递归(recursion):就是将问题分解为规模更小的相同的问题。 特征:在算法流程中调用自身,不用for、while循环。 举个简单的例子,计算 1+3+5+7+9。 上式可以写成:(1+(3+(5+(7+9)))),总结如下: 数列的和 = 首个数 + 余下数列的和 用代码表示如下: def listsum(numlist): if len(numlist) == 1: return numlist[0] else: return numlist[0] + listsum(nu原创 2021-07-13 22:48:05 · 226 阅读 · 2 评论 -
python数据结构——(3)表及其应用
表,分为无序表和有序表。 无序表 无序表概念:数据项按照相对位置存在的数据列表,跟数据的大小无关。 例如:[21, 44, 5, 65, 32] 在Python中,无序表的数据结构完全可以用Python本身的List表示。list的方法和功能如下: 方法 功能 .append(item) 将item插入到列表最后 .index(item) 返回item在列表中的位置 .insert(pos, item) 在列表中pos的位置插入item .pop() 移除列表中的最后一个元素原创 2021-07-09 22:41:47 · 236 阅读 · 2 评论 -
python数据结构——(2)队列及其应用
队列及其应用 队列的含义 队列可以抽象成排队,先进先出(FIFO)。 队列用一个列表表示,添加元素总发生在一端,我们称之为尾端(rear),而移除发生在另外一端,我们称之为首端(front)。 队列的实现: class Queue: # 横着的话,从左端进,从右端出 def __init__(self): self.items = [] def isEmpty(self): return self.items == []原创 2021-07-07 23:06:13 · 457 阅读 · 3 评论 -
python数据结构——(1)栈及其应用
栈 栈是什么呢?简单来说,就是一个没有盖子的水杯,装水的时候,先进去的水在最底下,而最后放的水在最上面。倒水的时候,在最上面的水先被倒出去,在最下面的水最后呗倒出去。总结来说,就是先入后出或者后入先出。 在python中,栈的方法有以下几种。 | | | | |–|--| | | | | | |–|--| | | | ...原创 2021-07-06 00:49:32 · 384 阅读 · 0 评论