package com.hephec.ds;
public class linkedlist
//有參的構造方法
public node(t data,node next)
}//儲存該鍊錶的頭節點
private node header;
//儲存該鍊錶的尾節點
private node tail;
//儲存該鍊錶中以及包含的節點數
private int size;
//建立空鍊錶
public linkedlist()
//以指定資料元素來建立鍊錶,該鍊錶只有乙個元素
public linkedlist(t element)
//返回鍊錶的長度
public int length()
//獲取鏈式線性表中索引為index處的元素
public t get(int index)
private node getnodebyindex(int index)
//從header節點開始
node current=header;
for(int i=0;iif(i==index)
}return null;
}//查詢鏈式線性表中指定元素的索引
public int locate(t element)
}return -1;
}//向鏈式線性表中指定位置插入乙個元素
public void insert(t element,int index)
//如果還是空鍊錶
if(header==null)
else
else}}
//採用頭插法為鍊錶新增新節點
private void addatheader(t element)
size++;
}//採用尾插法為鍊錶新增新節點
private void add(t element)
else
size++;
}//刪除鏈式線性表指定索引處的元素
public t delete(int index)
node del=null;
//如果被刪除的是header
if(index==0)
else}}
鏈式線性表的java實現
鏈式線性表將採用一組位址任意的儲存單元存放線性表中的資料元素。鏈式結構的線性表不會按線性的邏輯順序儲存資料元素,它需要在每乙個資料元素裡儲存乙個指向下乙個資料元素的引用。鏈式結構克服了順序結構需要預先知道資料大小的缺點,可以充分利用計算機的記憶體空間,實現記憶體的動態分配。在插入和刪除操作上,比順序...
線性表的鏈式結構
實驗一 線性表的基本操作 一 實驗目的 1 掌握順序表 鍊錶的概念,學會對順序表 鍊錶進行操作。2 實現順序表 鍊錶的儲存結構,逐步培養解決實際問題的能力 二 實驗內容 順序表 鍊錶結構的生成,插入,刪除,定位,查詢 三 實驗步驟 1 定義節點 2 生成乙個單鏈表 正序建立單鏈表或逆序建立單鏈表 3...
線性表的鏈式結構
上一章,我們談到了線性表的順序結構,由於線性表的插入和刪除等操作需要移動元素,造成時間效率低。另外,這種儲存結構需要占用連續的儲存空間。為了彌補順序儲存結構的不足,我們可以討論另一種儲存結構,即鏈式儲存結構,對線性表的插入 刪除不需要移動資料元素,但同時也失去了順序錶可隨機訪問的特點。所謂的鍊錶就是...