python数据结构与算法
就算我是吓唬人的又如何
这个作者很懒,什么都没留下…
展开
-
python实现二叉树,并且实现以各种方法对二叉树进行遍历以及其他功能
二叉树 代码如下: class BTree(object): # 初始化 def __init__(self, data=None, left=None, right=None): self.data = data # 数据域 self.left = left # 左子树 self.right = right # 右子树 # 前序遍历 # 根左右 def preorder(self):原创 2020-06-16 22:37:43 · 156 阅读 · 0 评论 -
python实现链表,定义功能函数对链表进行操作
用Python实现链表1.链表概念2.首先定义一个创建简单链表的类3.构造链表并实现相应的功能 1.链表概念 链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成。每个结点包括两个部分:一个是存储数据元素的数据域,另一个是存储下一个结点地址的指针域。 相比于线性表顺序结构,操作复杂。由于不必须按顺序存储,链表在插入的时候可以达到O(1)的复杂度,比另一种线性表顺序表快得多,但是查找一个原创 2020-06-16 00:41:53 · 613 阅读 · 1 评论 -
python实现双端队列
python实现双端队列双端队列概念 双端队列概念 与队列相比,双端队列自由度更高,对元素的删除和插入没有限制,可在前或在后进行元素的删除插入操作。 代码如下: class Deque: def __init__(self): self.items = [] # 判断是否为空 def isEmpty(self): return self.items == [] # 从前端插入数据 def addFront(self, item):原创 2020-06-15 17:49:58 · 184 阅读 · 0 评论 -
python实现队列
python实现队列队列结构基本概念: 队列结构基本概念: 队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。 代码如下: class Queue: def __init__(self): self.items = [] # 判断是否为空队列 def isEmpty(self): r原创 2020-06-15 17:40:31 · 152 阅读 · 0 评论 -
python代码实现栈
python实现栈 最近在学习基本数据结构和基本算法,写到博客中以便之后复习,也可以帮助一些和我一样的新手小白 代码如下: # 创建class Stack class Stack: # 初始化栈 def __init__(self): self.items = [] # 判断栈是否为空 def isEmpty(self): return self.items == [] # True False # 入栈 def push原创 2020-06-15 00:23:29 · 262 阅读 · 0 评论