鍊錶 Reverse Linked List II

2022-09-03 23:36:20 字數 745 閱讀 2866

【題目要求直接翻轉鍊錶,而非申請新的空間】

這道題的乙個關鍵在於,當m=1時,需要翻轉的鍊錶段前沒有其他的結點(leetcode的測試用例不含頭結點),這個特例給解題帶來了一點小小的困難。乙個比較直觀、比較方便的想法是在鍊錶中插入乙個頭結點,這樣處理起來方便很多。除此之外,還要注意各種迴圈邊界條件的設定。

/*

* * definition for singly-linked list.

* struct listnode ; */

struct listnode* reversebetween(struct listnode* head, int m, int

n) begin=pre->next;

for(i=m;i)

return head->next;

}

在leetcode上看到乙個很簡潔的**,基本思路大致相同靈活地運用了指標,無需新增頭結點,膜拜!

listnode* reversebetween(listnode* head, int m, int

n) listnode *cur = *pre; //

指向翻轉鍊錶的第乙個結點

for (int i = m; i < n; i++)

return

head;

}

鍊錶 環形鍊錶

環形鍊錶也叫迴圈鍊錶 可以是雙鏈表 也可以是單鏈表 操作原理和單鏈表差不多,只是最後乙個節點不在指向空 null 而是頭 head 這裡以單鏈表舉例 description 環形鍊錶 author lzq date 2018 11 3 20 46 version 1.0 public class a...

鍊錶 初識鍊錶

鍊錶 前言 小弟初學資料結構,有錯誤的地方望大家不吝賜教 認識鍊錶 列表相比陣列更具有優勢,鍊錶不同於資料和其他資料結構依靠位置來進行訪問或者其他操作,如陣列是依靠下表來運算元據。而鍊錶是通過關係來尋找或者運算元據。鍊錶的特性 插入 和 刪除 效率高,只需要變更指向的鏈結點即可。但是隨即訪問操作的效...

鍊錶(鍊錶建立)

先找到了一些與單鏈表相關的概念 2.指標域 ai元素儲存指向後繼元素儲存位置的資訊 3.結點 包含資料域和指標域 4.單鏈表 每個結點只包含乙個指標域的線性表 5.頭指標 要素 鍊錶中第乙個結點的儲存位置 線性表最後乙個結點指標為空 6.頭結點 非要素 單鏈表第乙個結點前附設乙個結點 其指標域指向第...