第一步:定義乙個list介面,規定一些基本操作
package my.stack;
public class node
public node(t data)
public node(t data, nodenext)
public void setdata(t data)
public t getdata()
public void setnext(nodenext)
public nodegetnext()
}
第二步:實現該介面定義的函式
1)由於是鍊錶,首先要定義乙個節點類(可以作為內部類實現)
package my.list;
public class node
public node(t data)
public node(t data, nodenext)
public void setdata(t data)
public t getdata()
public void setnext(nodenext)
public nodegetnext()
}
2)實現介面
package my.list;
public class mylinkedlistimplements mylist
public mylinkedlist(t data)
@override
//新增元素
public void add(t element) else
this.size++;
} @override
//清空鍊錶
public void clear()
@override
//刪除鍊錶最後乙個節點
public int delete()
tail.setnext(null);
tail = point;
size--;
return 0;
} @override
public boolean delete(int location) else
break;
// nodetemp = point.getnext();
// point.setdata(temp.getdata());
// point.setnext(temp.getnext());
// temp = null;
}nodetemp = point.getnext();
point.setdata(temp.getdata());
point.setnext(temp.getnext());
temp = null;
return true;
} return false;
} @override
//查詢鍊錶中是否包含某元素
public boolean find(t element)
point = point.getnext();
} return false;
} @override
public int size()
}
第三部:編寫客戶端進行測試
此處暫未實現使用location位置進行查詢,鍊錶隨即查詢效率較低
package my.list;
public class mylinkedlistclient
}
Java自定義鍊錶
鍊錶類 package com.link 鍊錶的增刪改查 未處理任何異常 author jing public class jlinklist 檢視第i個節點處data public object getdata int i 修改第i個節點處data public void setdate obje...
自定義鍊錶
鍊錶是非連續 無順序的資料結構,鍊錶中元素與元素之間的記憶體位址沒有順序關係。鍊錶由乙個個結點組成,結點中儲存兩類資訊,第一類是儲存入結點的資料,第二類是結點的指向。鍊錶分為單項鍊表,雙向鍊錶,環形鍊錶,單項鍊表中只有乙個結點指向,指向的的下乙個結點的記憶體位址,只能單向移動,單項操作 雙向鍊錶有兩...
自定義鍊錶
author qcg version 2019 5 6.description 自定義鍊錶 頭尾部的兩步操作 1.插入節點 next指向node 2.變更節點 last指標後移 node.next insertnode 這是插入元素的操作 public class mylinkedlist node...