我想實現一個基於數組的鏈接列表,它必須按字母順序排序。我有代碼插入和節點到目前爲止,但想檢查我是否是正確的,如果有人可以幫我寫一個主要的方法來顯示列表中的元素。以下是我目前的代碼。通過使用基於陣列的鏈接列表實現ADT列表
package listpackage;
import java.io.IOException;
public class ArrayLL {
private int MAX_CAP = 100;
private ANode[] list;
private int size;
public ArrayLL(){
list = new ANode[MAX_CAP];
list[list.length-1] = new ANode(null, -1);
for(int i = 0; i < list.length-1; i++){
list[i] = new ANode(null, i+1);
}
size = 0;
}
public void addElem(String s) throws IOException{
if(size == 0){
ANode a = new ANode(s, -1);
list[0] = a;
size++;
}else if(size == MAX_CAP + 1){
throw new IOException("List is full");
}else{
ANode a = list[0];
for(int i = 0; i< size; i++){
if(a.getData().compareTo(s)>0){
ANode b = new ANode(s,i+1);
for(int j = size; j > i; j--){
list[j] = list[j+1];
}
list[i] = b;
size++;
break;
}else{
ANode c = new ANode(s,-1);
list[size+1] = c;
}
}
}
}
public int getSize(){
return size;
}
}
class ANode{
private String data;
private int link;
public ANode(String d, int l){
data = d;
link = l;
}
public String getData(){
return data;
}
public int getLink(){
return link;
}
}
您面臨的具體問題是什麼? – 2013-02-16 23:11:56
有關代碼評論,請參閱http://codereview.stackexchange.com/。 – 2013-02-16 23:14:40
當我嘗試在數組包含元素時在頭部插入節點時,出現異常。 – Leon 2013-02-16 23:19:26