單向迴圈鍊錶

2021-09-29 23:45:57 字數 1010 閱讀 4759

**

對於單鏈表而言,最後乙個結點指標域是空指標,如果將該煉表頭指標置入該指標域,則使得鍊錶頭尾結點相連,這就構成了單迴圈鍊錶。和單鏈表的操作基本相同,只是把最後乙個結點的指標域指向頭指標而已,其他沒有變化。上篇博文我們說單鏈表有個缺點,就是無法隨機查詢,每次查詢乙個結點都要從頭開始,那麼單迴圈鍊錶就很好地解決掉了這個問題。單迴圈鍊錶可以從表中任意結點開始遍歷整個鍊錶。

**如下:

class

loopsinglelinkedlist

}public

void

add(e data)

node

tail =head;

while

(tail.next!=head)

newnode.next=tail.next;

tail.next=newnode;

}public

boolean

remove

(e data)

head=head.next;

tail.next=head;

return

true;}

node

prev =head;

node

current=head.next;

while

(current !=head)

prev=current;

current=current.next;

}return

false;}

public

void

show()

system.out.

println

(current.data+

" ")

; system.out.

println();}}

單向迴圈鍊錶

單向迴圈鍊錶.cpp 定義控制台應用程式的入口點。include stdafx.h include include clinklist.h using namespace std int tmain int argc,tchar argv int n 5 測試空鍊錶 clinklistclist a...

迴圈單向鍊錶

typedef struct list list 初始化乙個迴圈單向鍊錶 void list init list head 判斷鍊錶是否為空 int is list empty list head 往迴圈單向鍊錶中插入乙個元素 prev 在prev元素後面插入 void list insert li...

單向鍊錶迴圈

include include include include includetypedef struct looplink looplink,plooplink 設定結點物件,包含兩個成員,nvalue和指向下乙個物件的指標pnext plooplink create phead nvalue 9...