![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python学习
文章平均质量分 51
三岁就很萌@D
这个作者很懒,什么都没留下…
展开
-
python-链表
单向链表单向链表最简单的实现形式就是由多个节点的集合共同构成一个线性序列。每个节点存储一个对象的引用,这个引用指向序列中的一个元素,即存储指向列表中的下一个节点链表的第一个节点和最后一个结点分别为列表的头节点和尾节点实现单向链表的代码如下class Node:#节点 def __init__(self,elem): self.elem=elem s...原创 2019-07-07 17:40:55 · 196 阅读 · 0 评论 -
python-递归
递归是一种迭代实现方法 通过一个函数在执行过程中一次或多次调用其本身来解决问题 递归包括递归出口和递归体一 说明性的例子1 阶乘函数对于任何整数n>=0n!= 1 n=0 递归出口n*(n-1)(n-2)…32*1 n>=1 //递归体阶乘函数的递归实现def factorial(n): if n==0: retu...原创 2019-06-30 16:16:18 · 148 阅读 · 0 评论 -
python-堆排序
class Empty: passclass Heap:#实现递增排序 def __init__(self,list=[]): self._data=list self._cur=len(self._data)-1 def _parent(self,j):#返回父节点 return (j-1)//2 def _lef...原创 2019-07-10 15:04:37 · 80 阅读 · 0 评论 -
python -自底而上的构建堆,基于堆的优先级队列
堆堆是一棵二叉树T,该树在它的位置(节点)上存储了集合中的元组并且满足两个附加的属性:关系属性以存储键的形式在T中定义;结构属性以树T自身形状的方式定义。关系属性:在堆T中,对于除了根的每个位置p,存储在p中的键值大于或等于存储在p的父节点的键值由于效率的原因,必须使堆的高度尽可能的小,为了满足这一需求,堆必须是完全二叉树完全二叉树的属性:一个高度为h的堆T是一棵完全二叉树,那么T的0,1...原创 2019-07-10 12:08:55 · 923 阅读 · 0 评论 -
python-基于位置列表的优先级队列
优先级队列优先级队列是一个包含优先级元素的集合,这个集合允许插入任意的元素和删除优先级最高的元素。当一个元素被插入优先级队列中时,用户可以通过提供一个关键键来为该元素赋予一定的优先级。键值越小优先级越高优先级队列的抽象数据类型实现p.add(k,v):向优先级队列P中插入一个拥有键k和值v的元组p.min()返回一个元组(k,v),代表优先级队列P中一个包含键和值的元组,该元组的键值是最小...原创 2019-07-10 10:10:58 · 435 阅读 · 0 评论 -
python-二叉树的创建及遍历(基于链式存储结构)
二叉树的基本操作(创建一棵二叉树,先序中序后序递归遍历,先序中序后序非递归遍历class Empty(Exception): passclass LinkedStack:#进行非递归遍历时用到的栈 class _Node: def __init__(self,element,next): self._element=element self....原创 2019-07-09 14:29:56 · 1266 阅读 · 0 评论 -
python-双端队列
双端队列双端队列是一种类队列的数据结构,它支持在队列的头部和尾部都进行插入和删除操作双端队列的抽象数据类型D作为双端队列的实例D.add_first(e):向双端队列的前面添加一个元素eD.add_last(e):向双端队列的后面添加一个元素eD.delete_first():从双端队列中移除并返回第一个元素。若双端队列为空,则触发一个错误D.delete_last():从双端队列中...原创 2019-07-03 20:09:38 · 245 阅读 · 0 评论 -
python-队列
队列队列是由一系列对象组成的集合,这些对象的插入和删除遵循先进先出的原则。也就是说,元素可以在任何时刻进行插入,但只有处在队列最前面的元素才能被删除 通常将队列允许插入的一端称为队尾,将允许删除的一端则称为队头队列的抽象数据类型Q为队列的一个实例Q.enqueue(e):向队列Q的队尾添加一个元素Q.dequeue():从队列Q中移除并返回第一个元素,如果队列为空,则触发一个错误Q.f...原创 2019-07-03 18:31:52 · 134 阅读 · 0 评论 -
python-栈
栈是一系列对象组成的集合,这些对象的插入和删除操作遵循后进先出的原则。用户可以在任何时刻向栈中插入一个对象,但只能取得或删除最后插入的对象(即所谓的栈顶)堆栈的示例1网络浏览器将最近浏览的网址存放在一个栈中。每次当访问者访问一个新网站时,这个新网站的网址就被压入栈顶。这样浏览器就可以在用户单击后退按钮时,弹出先访问的网址,以回到其先前访问的网页2文本编辑器通常提供一个“撤销”机制已取消最近的...原创 2019-07-03 16:24:28 · 113 阅读 · 0 评论 -
python-哈希表
哈希表,哈希函数哈希表是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做哈希函数,存放记录的数组叫做哈希表。给定表M,存在函数f(key),对任意给定的关键字值key,代入函数后若能得到包含该关键字的记录在表中的地址,则称表M为哈希(Hash)表,函数f(key)为哈希(Hash) 函数。P...原创 2019-07-11 13:07:47 · 277 阅读 · 0 评论