迴圈鍊錶如果拿到最後結點,若沒有尾指標(rear),那麼需要o(n)的時間。如果有的話,只需要o(1)的時間。一道題目:將兩個線性表a(a1,a2,a3...)和b(b1,b2,b3...)連線成乙個線性表。如果有兩個鍊錶,需要將他們連線,擁有尾指標只需要o(1)的時間複雜度。
此時,判斷迴圈鍊錶是否為空的方法:rear是否等於rear->next。
思路:a的rear不再指向a的head,而是指向b的head->next;然後需要將b的head釋放(乙個鍊錶只能有乙個頭結點);最後,將b的rear重新指向a的head。
簡單實現:
node * connect(node *a_rear,node *b_rear)
csdn位址 :
也可以致信進行交流 : [email protected]
指標及其應用(一)
2 指標的長度 指標的長度時固定的,任何型別的指標都是4 位元組。原因 所有的指標都用來儲存位址,而在作業系統中,位址的長度是固定的,因為位址的長度是由作業系統的位數決定的。32 位的作業系統中是 4位元組,64位的作業系統中 是 8位元組。3 指標的運算子 和 運算子 通常稱為間接引用運算子,它返...
指標及其應用(二)
一 多維指標 一維指標儲存基本變數的位址 二維指標儲存一維指標變數的位址 三維指標儲存二維指標變數的位址 三 指標和陣列的區別 1 空間分配上 陣列是靜態分配的,指標是動態分配的 2 訪問效率上 陣列訪問效率更高,指標訪問效率較低 3 傳參時 接收的形參均是指標 4 安全性 陣列容易造成越界,指標容...
棧及其簡單應用
棧是一種特殊的線性表 是一種先進後出表 filo 只有棧頂元素才能被操作 特殊 棧具有特殊的儲存訪問結構 棧的操作 入棧 向棧中儲存資料元素 push 出棧 從棧中取出元素 pop 棧頂指標 top 用來指向最後乙個入棧元素 棧滿 上溢 不可入棧 top size 1 入棧操作 top top 1 ...