乾草我想爲我做的一個動態鏈接列表類快速排序方法。但我不斷得到一個NullPointerException,並不能解決原因。快速排序與動態鏈接列表
private void addToEnd(IntList y){
if(y.head != null){
IntNode tmp = this.head;
while(tmp.getNext() != null){ //line 68
tmp = tmp.getNext();
}
tmp.setNext(y.head);
}
}
public IntList Quicksort(){
if(this.length() > 1){
IntList bList = new IntList();
IntList sList = new IntList();
IntList pivot = new IntList();
pivot.addNode(head);
int pivotInt = this.head.getValue();
IntNode test = this.head.getNext();
while(test != null){
if(test.getValue() > pivotInt){
bList.addNode(test);
}else{ sList.addNode(test);}
test = test.getNext();
}
sList.Quicksort().addToEnd(pivot);
sList.addToEnd(bList.Quicksort());
}
return this;
}
我得到了第68行的NullPointerException,不知道爲什麼。有人可以幫我從這裏出去嗎? 68號線是
while(tmp.getNext() != null){ //line 68
爲什麼? Quicksort是爲數組設計的。 – EJP 2013-05-01 22:59:41
-1,請發佈堆棧跟蹤和錯誤所在的行。我們不會計算68條線路來免費幫助陌生人。 – Doorknob 2013-05-01 23:01:20
我知道,但我已被要求,所以我是誰不同意:) – 1ftw1 2013-05-01 23:02:00