随笔分类 - Algorithm
摘要:本文主要解决一个问题,如何实现二叉树的前中后序遍历,有两个要求:1. O(1)空间复杂度,即只能使用常数空间;2. 二叉树的形状不能被破坏(中间过程允许改变其形状)。通常,实现二叉树的前序(preorder)、中序(inorder)、后序(postorder)遍历有两个常用的方法:一是递归(recursive),二是使用栈实现的迭代版本(stack+iterative)。这两种方法都是O(n)的空间复杂度(递归本身占用stack空间或者用户自定义的stack),所以不满足要求。(用这两种方法实现的中序遍历实现可以参考这里。)Morris Traversal方法可以做到这两点,与前两种方法的不同
阅读全文
摘要:问题的陈述在:https://code.google.com/codejam/contest/2418487/dashboard#s=p2&a=1,官方的分析在:https://code.google.com/codejam/contest/2418487/dashboard#s=a&a=2。这篇文...
阅读全文
摘要:
本题要求编程实现求解整数的平方根。第一个思路是在可能的解范围内进行搜索,通过求平方判定是否为所求平方根。第二个思路是通过牛顿迭代法求解。第一个方法很容易想到,这篇博文主要是针对第二种方法,讲解如何通过牛顿迭代法求解多次方程的解。最后,会对此题目进行小的扩展,即求解实数的平方根。
阅读全文
![](http://images.cnblogs.com/cnblogs_com/AnnieKim/338183/o_LeetCode.jpg)