非递归方法遍历二叉树
二叉树遍历是经典的算法题目,最传统的方案是使用递归的方式进行遍历,特点是代码非常简洁。当然,除了递归方案,二叉树也可以使用 迭代的方法进行遍历。具体的,包括两种思路,一种是使用程序栈模拟递归过程,第二种是利用叶子结点 的 null 子节点模拟线索二叉树完成遍历(Morries 方法)。本文将对他们进行总结归纳。
二叉树遍历是经典的算法题目,最传统的方案是使用递归的方式进行遍历,特点是代码非常简洁。当然,除了递归方案,二叉树也可以使用 迭代的方法进行遍历。具体的,包括两种思路,一种是使用程序栈模拟递归过程,第二种是利用叶子结点 的 null 子节点模拟线索二叉树完成遍历(Morries 方法)。本文将对他们进行总结归纳。
为了测试方便,在 windows 上安装了 hadoop。
在 Java 中,Map
和 Set
接口,最常用的实现类分别为 HashMap
和 HashSet
, 而 HashSet
的背后实际上就是 HashMap。 因此, 为探究 Java 实现 Hash 集合类的方法,在这里对 Java HashMap
的源码进行简单的分析。
Java 提供了3个常用的用于表示字符串的类,分别为 String
,StringBuilder
, StringBuffer
。本篇文章对他们的差异进行简单的分析。
有限状态自动机(FSM- Finite State Machine,又称为 Finite-State Automation,下面简称为 自动机),是表示有限个状态以及这些状态之间的转移和动作行为的数学计算模型。
JS 是为网页开发而设计的语言,可以使用 JS 操作网页中的元素对象,来实现网页的动态效果与逻辑。本篇对 JS 中自带的浏览器对象进行介绍,并介绍 jQuery 库,用于更加方便的操作网页对象。