自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 优先队列

优先队列也是一种重要的缓存结构,基于二叉树,可以做出优先队列的一种高效实现。概念优先队列与栈和队列类似,将数据元素保存在其中,可以访问和弹出。优先队列的特点是存入其中的元素都另外附有一个值,表示这个元素的优先程度,称其为优先值。优先队列应该保证在任何时候,弹出的应该是保存在这个容器中优先值最高的元素,如果该元素不弹出,再次访问时仍弹出该元素。 也有可能出现这种情况:优先队列中有两个元...

2018-03-01 21:24:54 389

原创 二叉树的类实现

二叉树的结点类二叉树由一组结点组成,结点通过链接引用其子结点,没有子结点时用NoneNoneNone值,空二叉树用NoneNoneNone表示。class BinTNode: def __init__(self, dat, left=None, right=None): self.data = dat self.left = left ...

2018-02-24 09:39:50 608

原创 二叉树

二叉树是一种最简单的树形结构,特点是树中每个结点至多关联到两个后继结点,一个结点的关联结点数可以为0、1或2;另一个特点是后继结点明确的分左右:左关联结点或右关联结点。基本概念二叉树是结点的有穷集合,或者为空集,或者为只有一个根结点,其余结点分属两棵不相交的二叉树,左子树和右子树。 二叉树的根结点称为该子树根结点的父结点,子树的根结点称为二叉树根节点的子结点;父结点和子结点的概念是相...

2018-02-23 09:56:17 346

原创 队列

队列也是一种容器,任何时候可访问的元素为最早存入队列而未出队的元素,队列是先进先出结构。队列的实现队列抽象数据结构ADT Queue: Queue(self) #创建空队列 is_empty(self) #判断是否为空 enqueue(self,elem) #元素elem入队 dequ...

2018-02-19 23:35:39 194

原创

栈和队列主要用于在计算过程中保存临时数据,是一种缓冲存储结构。 - 栈是保证元素后进先出关系的结构 - 队列是保证元素先进先出的结构栈的实现栈抽象数据结构ADT Stack: Stack(self) #创建空栈 is_empty(self) #判断栈是否为空 push(self, elem) #将元素elem

2018-02-02 11:15:29 279

原创 链接表的变形

单链表的简单变形为单链表添加一个尾节点,使尾端加入新元素的操作时间为O(1)O(1)。class LList1(LList): #继承自LList类,添加了一个新的域名来保存结尾的链接 def __init__(self): LList.__init__(self) self._rear = None#空表的每次操作都会涉及到_rear,

2018-01-24 16:05:04 205

原创 牛顿法求平方根

x√\sqrt x平方根定义为:有一个yy,使得y≥0y\ge0而且y2=xy^2=x。这是一个数学函数,并没有描述一个计算过程来得到xx的平方根。即使将这个定义用LispLisp的形式重写一遍也无济于事:(define (sqrt x) (the y (and (>= y 0) (= (square y) x) ) ))计算

2018-01-20 16:52:50 951

原创 链接表

链接表把每个元素储存在一批独立的储存块里,在每个节点中显式的保存下一个节点的链接,从每个节点都可以找到与其相关的下一个节点。单向链接表节点为一个二元组,分别保存着元素数据和下一个节点的链接,在尾节点的链接域设置一个空链接来表示表的结束。 定义一个简单的表节点类:class LNode: def __init__(self, elem, next_=None):

2018-01-18 22:03:29 1788

原创 顺序表

基本实现方式最常见的情况为一个表中保存的元素类型相同,因此每个元素所需存储量相同,首元素放置在存储区的起始位置,其余元素一次放置,逻辑顺序关系通过元素的位置关系表明。存取操作时间可在O(1)O(1)时间内完成。 假设起始位置的内存地址为l0l_0,表元素编号从0开始,则元素e0e_0存储在内存位置为Loc(e0)=l0Loc(e_0)=l_0的位置,再假定一个元素所需单元存储数为c=size

2018-01-12 21:15:53 182

原创 线性表

线性表表是一种抽象的数据类型,包含0个或多个元素,每个元素在表里都有一个确定的位置,称为该元素的下标。包含的元素个数为表的长度,每个非空表都有唯一的首元素和尾元素;除首元素外,每个其他元素都有一个前驱元素;除尾元素外,每个元素都有一个后继元素。Python的内置类型list和tuple可看作是线性表的实现。表的操作创建操作: 创建空表,不需要提供其他信息。创建包含元素的表,额外

2018-01-11 15:45:48 193

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除