摘要: 题目:输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。 结果请按字母顺序输出。输入一个字符串,长度不超过9(可能有字符重复),字符只包括大小写字母。 思路:递归,回溯。 实现 阅读全文
posted @ 2016-05-03 23:28 Pickle 阅读(203) 评论(0) 推荐(0) 编辑
摘要: 题目:输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。 思路:二叉搜索树中序遍历就是有序序列,把整个树拆成3部分,根,左子树,右子树。连接起来应该是,左子树的最右叶子节点的右指针指向根,根的左指针指向左子树最右节点,根的右指针指向右子 阅读全文
posted @ 2016-05-03 21:09 Pickle 阅读(1036) 评论(0) 推荐(0) 编辑
摘要: 题目:输入一颗二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。 思路:递归回溯。先从先序遍历递归到叶子节点然后回溯所有的解。满足就加入结果集合。 实现代码: 阅读全文
posted @ 2016-05-03 20:28 Pickle 阅读(174) 评论(0) 推荐(0) 编辑