鍊錶插入排序

2021-07-29 15:29:20 字數 660 閱讀 1145

一、問題描述

用插入排序對鍊錶排序

樣例given1->3->2->0->null, return0->1->2->3->null

二、解題思路

開頭的dummy的作用是,把head開頭的鍊錶乙個個插入到dummy開頭的鍊錶中,然後當head的鍊錶不為空時,定義

乙個指標變數node,當node->next不為空且node指向的下乙個元素小於要插入的元素時,繼續往下查詢,即node=

node->next,否則插入我們要插入的元素。

三、我的**

class solution

listnode *temp=head->next;

head->next=node->next;

node->next=head;

head=temp;

}return dummy->next;}};

四、我的感想

運用鍊錶插入排序,也就是比較然後判斷改變指標,感覺並不難,思路要清晰。

鍊錶插入排序

void insertsort list sortascount,node node else p prior next q q next p int sortwithinsetmethod list sortasdata wchar pp p data if isnum pp int i 0 i ...

鍊錶插入排序

題目 用插入排序對鍊錶排序 樣例 given1 3 2 0 null,return0 1 2 3 null 思路 新建乙個以dummy開頭的鍊錶,並將dummy賦初值為0。令node dummy,通過移動新煉表中的node與要排序的鍊錶中的head,並比較node與head的值,來實現排序。如果he...

鍊錶插入排序

題目 用插入排序對鍊錶排序 思路 建立乙個新的鍊錶,將目標鍊錶依次插入先煉表中,小就插到前面,大就插到後面,如此一來,新的鍊錶就是目標鍊錶按大小次序排列的了。先看第一步,將目標鍊錶的第乙個元素插入所建立的空鍊錶,具體是先建立乙個地值存下頭節點的下乙個節點的位置,將頭節點的next變為空,連到一開始建...