
数据结构
文章平均质量分 68
iamyina
这个作者很懒,什么都没留下…
展开
-
二叉树三种遍历的非递归算法
本人水平有限,以下算法参考了好多资料,整理出了便于记忆的背记版1。三个算法框架类似,外层while循环条件相同,便于记忆,都以“高歌猛进”作为步骤1;2。前序中序非常简单,掌握好了“高歌猛进”和“柳暗花明”,一切皆送分;3。后序关键扩充了栈,分清出入栈时的flag代表的含义,亲自动手遍历一遍,就可知晓; 网上虽然有后续遍历其他版本,但是判断条件多,格式与前中序不太一致,且需转载 2009-04-25 22:02:00 · 975 阅读 · 1 评论 -
C++约瑟夫环
学了四年,还是不一样的。当年大一时约瑟夫环是个啥都理解了半天,现在可以在十分钟里面自己写个算法了,真是值得纪念。约瑟夫环:已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,直到圆桌周围的人全部出列。例如:n = 9, k = 1, m = 5【解答】出局人原创 2009-04-26 17:43:00 · 8083 阅读 · 7 评论 -
用单链表实现查找(获取)倒数第m个元素(转自IT博客网chlclan的博客)
面试题。知道肯定有简便算法,但当时只想到两遍循环这种超基础算法。。。回来找了一下,列出其中一种。原文地址:http://www.cnitblog.com/chlclan/archive/2006/06/23/12767.html 用单链表实现查找(获取)倒数第m个元素,当m=0时就是指单链表最后一个元素。最佳算法之一: 用两个指针,一个指向当前遍历的元素,CurPos,另外一个指向转载 2009-04-28 21:34:00 · 1136 阅读 · 0 评论