給定基準重新排列鍊錶資料

2021-09-28 17:09:54 字數 770 閱讀 5064

leetcode練習題,比基準值小的放其前面,否則放後面,且原鍊錶的結點位置關係不變,如 8 2 5 1 6 3 4 9 10,給定基準值7

則結果為 2 5 1 6 3 4 8 9 10

//建立兩個鍊錶,乙個放比基準值小的,乙個放大的,之後再將兩鍊錶鏈結起來即可

//給定基準重新排列鍊錶資料

/*struct listnode

};*/

class partition

struct listnode* lt=

(struct listnode*

)malloc

(sizeof

(struct listnode));

struct listnode* lh=lt;

struct listnode* gt=

(struct listnode*

)malloc

(sizeof

(struct listnode));

struct listnode* gh=gt;

struct listnode* cur=phead;

while

(cur)

else

cur=cur->next;

}//防止出現環

gt->next=

null

; lt->next=gh->next;

cur=lh->next;

return cur;}}

;

重新排列鍊錶

leetcode leetcode上有下面這樣乙個題目,比較有意思,拿來實現,權當練習基本功了 total accepted 8598 total submissions 44508 my submissions given a singly linked list l l 0 l1 l n 1 l...

Leetcode 143 重新排列鍊錶

這裡涉及到三個鍊錶的基本操作,這是一道很經典的鍊錶操作題目 首先是尋找鍊錶的中點,設定兩個指標,一快 一慢 其次是反轉鍊錶,這是非常常見的乙個鍊錶操作,很容易出錯 最後是兩個鍊錶的交叉連線 public void reorderlist listnode head private listnode ...

Excel進行資料重新排列

前陣子進行資料採集,有乙個軟體輸出的資料是以每行249個來輸出的,而我們當時的資料採集要求是每行240個,這樣就需要將這些資料重新排列。當時採用了笨方法,純手工打造,每行用手重新輸入的,費了好大力氣。這陣子有些輕閒,所以上網去搜尋了下方法。沒想到碰到高人指點,茅塞頓開。不敢獨享,特此拿出來大家共勉。...