摘要: 树是数据结构中常用到的一种结构,其实现较栈和队稍为复杂一些。若树中的所有节点的孩子节点数量不超过2个,则该为一个二叉树。二叉树可用于查找和排序等。二叉树的主要操作有:建树,遍历等。遍历是树中的一个最为重要的操作,可分为深度优先遍历和广度优先遍历。其中,尝试优先遍历又可分为先序遍历,中序遍历和后序遍历。深度优先遍历可使用递规来实现,也可以用栈和队通过循环实现。后序的非递规遍历,比其他两种遍历稍为复杂些。下面给出一个python实现二叉树的例子:class Node(object): def __init__(self, data = -1, lchild = None, rchild = ... 阅读全文
posted @ 2013-09-17 14:19 myLittleGarden 阅读(23899) 评论(1) 推荐(1)
摘要: 队也是编程开发中常见的一种数据结构。栈和队可用来模拟函数的递归过程。队的特点为先入先出,主要操作包括入队和出队。入队时需判断队是否已满,出队时需判断队是否为空。下面给出一个队的python实现的例子:class Queue(object): def __init__(self, size = 8): self.queue = [] self.size = size self.front = 0 self.rear = -1 def isFull(self): return True if self.rear =... 阅读全文
posted @ 2013-09-17 13:57 myLittleGarden 阅读(575) 评论(0) 推荐(0)
摘要: 栈是编程开发中的两种较为简单的数据结构。栈和队可用于模拟函数的递归。栈的特点是后进先出。其常用操作包括:出栈,入栈等。在出栈前,需判断栈是否为空。在入栈时,需判断栈是否已满。下面给出一个用python实现的栈的实例:class Stack(object): def __init__(self, size = 8): self.stack = [] self.size = size self.top = -1 def set_size(self, size): if self.top >= size: ra... 阅读全文
posted @ 2013-09-17 13:51 myLittleGarden 阅读(2204) 评论(0) 推荐(0)