BugBlog

problem

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
//JAVA
// Wrong!!!,这样写改不了树,put不进去
// public void NonrecursivePut(Key key,Value val){
// if(key==null)throw new IllegalArgumentException("the 1st of Put() is null");
// Node x = root;
// while(x!=null){
// int cmp = key.compareTo(x.key);
// if(cmp>0) x=x.right;
// else if(cmp<0) x= x.left;
// else x.val=val;
// }
// x=new Node(key,val);Wrong!!因为只是将临时引用指向了新创建的对象,而实际的x.left或x.right引用依然为null
// }

//Solution: 记录父节点,通过修改父节点.left和right进行