資料結構 鍊錶

2021-08-16 22:28:20 字數 1887 閱讀 1980

1.核心思想

鍊錶中只包含乙個資料項,即對第乙個鏈結點的引用。

2.實現鍊錶

public

class

testlinklist

}public

class

linklist

else

}public

void

displayall()}}

3.查詢指定節點

public

static

void

main(string args)

//查詢節點

public link find(long key)

current=current.getnext();

}return current;

}

4.新增指定結點

//新增結點到指定位置

public

void

insert(long value,int pos) else

link lnk = new link(value);

lnk.setnext(current.getnext());//新結點指向原位置結點的next

current.setnext(lnk);//原位置結點的next設為自己

}

}5.刪除指定結點

public

static

void

main(string args)

//刪除指定結點

public

void

delete(long key)else

}if(current==first)else

}

6.比較鍊錶和順序表

public

static

void

main(string args)

date date2=new date();

system.out.println(date2.gettime()-date1.gettime());

//每次都不一樣,某次134ms

//構建順序表

myarray ma=new myarray(1000001);

date1=new date();

for(int i=0;i<1000000;i++)

date2=new date();

system.out.println(date2.gettime()-date1.gettime());

//20ms,但實際鍊錶更快,只需改變指標的指向(此程式未實現)

date1=new date();

linklist.delete(999999);

date2=new date();

system.out.println(date2.gettime()-date1.gettime());

//0,實際上鍊表刪除應更快

date1=new date();

ma.delete(999999);

date2=new date();

system.out.println(date2.gettime()-date1.gettime());

//11,刪除後每一位要移動,非常麻煩 }}

資料結構 鍊錶

鍊錶 what 就是一張鏈式儲存的表,是一種資料結構,是基礎,所以還是不要想有什麼用。具體呢?在c中就用結構體實現物件描述,然後通過函式來實現各個基本操作 c 則用類來表述,c中的結構體就可以看成c 中的類,然後通過類封裝各個操作步驟。這些操作實現後就需要 來測試,號稱demo,就是main函式裡面...

資料結構 鍊錶

鍊錶中的資料是以節點來表示的,每個結點的構成 元素 資料元素的映象 指標 指示後繼元素儲存位置 元素就是儲存資料的儲存單元,指標就是連線每個結點的位址資料。鍊錶的結點結構 data next data域 存放結點值的資料域 next域 存放結點的直接後繼的位址 位置 的指標域 鏈域 以 結點的序列 ...

資料結構 鍊錶

一般的建立線性鍊錶有兩種 1.正序法 需要三個指標,head作為頭指標,pre作為前乙個指標,cur作為當前指標用來建立空間 2.倒序法,利用指標的插入,只需要兩個指標,不斷的往頭指標後插入新空間,不過插入的越早,離頭指標越遠,也就越後面輸出 1.線性鍊錶的建立及查詢刪除 include inclu...