摘要:
http://blog.csdn.net/pongba/article/details/1561110 阅读全文
摘要:
27.跳台阶问题(递归)题目:一个台阶总共有 n 级,如果一次可以跳 1 级,也可以跳 2 级。求总共有多少总跳法,并分析算法的时间复杂度。这道题最近经常出现,包括 MicroStrategy 等比较重视算法的公司都曾先后选用过个这道题作为面试题或者笔试题。思路:不难 注意边界 就是时间复杂度我没求... 阅读全文
摘要:
第 16 题(树):题目(微软):输入一颗二元树,从上往下按层打印树的每个结点,同一层中按照从左往右的顺序打印。 例如输入 8 / \6 10/ \ / \5 7 9 11输出 8 6 10 5 7 9 11。思路:之前做USACO和学算法的时候经常用的 广度优先搜索 1 /* ... 阅读全文
摘要:
第 15 题(树):题目:输入一颗二元查找树,将该树转换为它的镜像,即在转换后的二元查找树中,左子树的结点都大于右子树的结点。用递归和循环两种方法完成树的镜像转换。 例如输入:8/ \6 10/ \ / \5 7 9 11输出:8/ \10 6/ \ / \11 9 7 5定... 阅读全文
摘要:
1.把二元查找树转变成排序的双向链表(树)题目:输入一棵二元查找树,将该二元查找树转换成一个排序的双向链表。要求不能创建任何新的结点,只调整指针的指向。 10 / \ 6 14 / \ / \ 4 8 12 16转换成双向链表4=6=8=10=12=14=16。首先我们定... 阅读全文
摘要:
4.在二元树中找出和为某一值的所有路径(树)题目:输入一个整数和一棵二元树。从树的根结点开始往下访问一直到叶结点所经过的所有结点形成一条路径。打印出和与输入整数相等的所有路径。例如 输入整数 22 和如下二元树 10 / \ 5 12 / \4 7则打印出两条路径:10,... 阅读全文