JAVA红黑树
JAVA红黑树
概念:每个节点都带有颜色属性的二叉查找树,颜色或红色或黑色;
特性:
性质1. 节点是红色或黑色。
性质2. 根是黑色。
性质3. 每个红色节点的两个子节点都是黑色。(从每个叶子到根的所有路径上不能有两个连续的红色节点)
性质4. 从任一节点到其每个叶子的所有路径都包含相同数目的黑色节点。
性能:O(log n)的时间之外,每次插入或删除需要O(log n)的空间。
实现:
JAVAQueue:用linkedlist写的队列
import java.util.LinkedList;
public class JavaQueue {
/**
* @param args
*/
private LinkedList list = new LinkedList();
public void push(Object v) {
list.addFirst(v);
}
public Object pop() {
return list.removeFirst();
}
public Object get() {
return list.removeLast();
}
public boolean isEmpty(){
return list.isEmpty();
}
}
JAVAStack:用linkedlist写的堆栈
import java.util.ArrayList;
import java.util.HashMap;
import java.util.LinkedList;
import java.util.Map;
import com.sun.xml.internal.bind.v2.schemagen.xmlschema.List;
public class JavaStack {
private LinkedList list = new LinkedList();
public void push(Object v) {
list.addFirst(v);
}
public Object pop(){
return list.removeFirst();
}
public Object top(){
return list.getFirst();
}
public boolean IsNull(){
if(list.size()==0) return true;
else return false;
}
/*public static void main(String[] args) {
// TODO Auto-generated method stub
JavaStack stack=new JavaStack();
for(int i=0;i<10;i++)
{
stack.push(i);
}
System.out.println(stack.top());
stack.pop();
System.out.println(stack.top());
Map map=new HashMap();
A a=new A();
A b=new A();
A c=new A();
int i=0;
map.put(i, a);
map.put(i++, b);
map.put(i++, c);
}
*/
}
TreeNode:定义的节点类
 
相关文档:
Java 7已经完成的七大新功能预览zz
2009-12-12 09:15
最近的Devoxx大会上,Java 7将包含闭包的消息令很多人感到振奋——这将做为一个独立的JSR被实现。在众多Java 7新的语言特性中,有一些现在已经完成了。Devoxx大会的一位参会者在博客中报告了下面这些Java 7已经完成的7大新功能:
1)对集合类的语言支持;
......
很多网友咨询学习Java有没有什么捷径,我说“无他,唯手熟尔”。但是尚学堂愿意将一些经验写出来,以便后来者少走弯路,帮助别人是最大的快乐嘛!
要想学好Java,首先要知道Java的大致分类。我们知道,自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE, ......
JAVA代码查错
1.
abstract class Name {
private String name;
public abstract boolean isStupidName(String name) {}
}
大侠们,这有何错误?
答案: 错。abstract method必须以分号结尾,且不带花括号。
2.
public class Something {
void doSomething () {
......
Java面试题及答案(基础题122道)
JAVA相关基础知识
1、面向对象的特征有哪些方面
1.抽象:
抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。 ......