码农乌托邦

楠哥小站

楠哥,理想主义码农,就职于Google,现居纽约。


Leetcode中使用的二叉树结构

在leetcode中使用的二叉树,大多是"双指针"二叉树,即每个节点有指向其两个孩子的两个指针。同时,每个节点都有一个域存储该节点的int型值。每个节点写成一个类,该类每个域都是默认的public型的,可以从类外直接访问。该类提供一个构造函数,用于创建一个新的节点并将int型的value赋值。每个节点的java实现如下:

public class TreeNode {
	int val;
	TreeNode left;
	TreeNode right;

	TreeNode(int x) {
		val = x;
	}
}
最近的文章

Balanced Binary Tree

判定平衡二叉树的题目是一道基本的数据结构题目,在Leetcode的OJ上也有相关的测试用例。二叉树的结构请参见《Leetcode中使用的二叉树结构》。 可以使用一个递归函数,递归的判断每个节点的左子树…

Technical, Career继续阅读
更早的文章

Best Time to Buy and Sell Stock

股票买卖是面试当中另外一个常见的问题。问题的描述是:给出一个数组,数组中的的数表示每个时刻股票的价格。如果只允许买卖一次,请写出一个算法给出可能的最大收益。基础的算法是对于一个个时刻,搜索其能得到的最…

Technical, Career继续阅读
comments powered by Disqus