LeetCode第147題 對鍊錶進行插入排序

2021-10-13 12:29:49 字數 746 閱讀 3027

解題思路:把第乙個當做有序的結點,剩下的一次拿下來頭插或者尾插或者中間插三種情況,當你拿下來的時候一定要記得保留下乙個結點位址,否則你插完乙個之後就找不到下乙個了。

*///只有第乙個數有序,其他的數只要比他小,就不斷的往前插

//但是這個題所畫的**是不適合鍊錶的插入的,這個**只適合陣列的插入

typedef

struct listnode node;

struct listnode*

insertionsortlist

(struct listnode* head)

else

else

}//這裡從迴圈裡面出來可能有兩種情況,一種是break,一種是sortcur為null,所以需要判斷一下

//尾插

if(sortcur ==

null)}

cur = next;

}return sorthead;

}

leetcode筆記 147對鍊錶進行插入排序

題目 插入排序演算法 插入排序是迭代的,每次只移動乙個元素,直到所有元素可以形成乙個有序的輸出列表。每次迭代中,插入排序只從輸入資料中移除乙個待排序的元素,找到它在序列中適當的位置,並將其插入。重複直到所有輸入資料插入完為止。示例 1 輸入 4 2 1 3 輸出 1 2 3 4示例 2 輸入 1 5...

Leetcode 147 對鍊錶進行排序

對鍊錶進行插入排序。插入排序演算法 插入排序是迭代的,每次只移動乙個元素,直到所有元素可以形成乙個有序的輸出列表。每次迭代中,插入排序只從輸入資料中移除乙個待排序的元素,找到它在序列中適當的位置,並將其插入。重複直到所有輸入資料插入完為止。示例 1 輸入 4 2 1 3 輸出 1 2 3 4 到了鍊...

LeetCode 147 對鍊錶進行插入排序

插入排序演算法 插入排序是迭代的,每次只移動乙個元素,直到所有元素可以形成乙個有序的輸出列表。每次迭代中,插入排序只從輸入資料中移除乙個待排序的元素,找到它在序列中適當的位置,並將其插入。重複直到所有輸入資料插入完為止。方法1 嚴格按照演算法說明,在原始列表中進行操作,利用4個鍊錶指標分別表示當前元...