Data Structure
文章平均质量分 77
georgechen_ena
这个作者很懒,什么都没留下…
展开
-
最小堆和最大堆 heap (zz)
http://www.cppblog.com/NicYun/archive/2008/08/04/57934.html #include #include #include using namespace std; #define SIZE 500000 v转载 2011-09-04 09:41:47 · 421 阅读 · 0 评论 -
字典树(trie tree)
今天AC了两题trie tree的题目,感觉trie的性质真的是相当的好,而且实现比较简单。它使在字符串集合中查找某个字符串的操作的复杂度降到最大只需O(n),其中n为字符串的长度。trie是典型的将时间置换为空间的算法,好在ACM中一般对空间的要求很宽松。 trie转载 2011-08-28 13:53:06 · 497 阅读 · 0 评论 -
单函数实现后续遍历平衡二叉树返回前驱后继双向链表
某公司面试题,要求: 1. 结点只能包含5个字段:数据域、左右孩子、前驱后继 2. 只能用一个函数实现 3. 尽可能优化 第一个发过去的可行版本: typedef int T; struct Node { T data; Node* left; Node* right; Node* pre; Node* next; Node()原创 2011-12-29 16:56:50 · 833 阅读 · 0 评论 -
二叉树遍历非递归算法
http://www.360doc.com/content/07/0601/21/9889_533413.shtml 先序非递归算法 【思路】 假设:T是要遍历树的根指针,若T != NULL 对于非递归算法,引入栈模拟递归工作栈,初始时栈为空。 问题:如何用栈来保存信息,使得在先序遍历过左子树后,能利用栈顶信息获取T的右子树的根指针? 方法1:访问T->data后,将T入转载 2011-12-29 16:37:17 · 347 阅读 · 0 评论