合併兩個有序單鏈表C

2021-07-22 13:02:03 字數 530 閱讀 9637

/*

author: victor lv

date: 2016-9-1 11:20

description: c++ list merge(sort)

*//**

* c++:將兩個公升序排列的鍊錶合併成乙個公升序排列的鍊錶(不開闢新的鍊錶,直接將原鍊錶重新組合)

* 輸入:兩個list的頭指標

* 返回:新的list頭指標

* 注意別讓鍊錶斷了找不到下乙個節點,在切斷原指向之前需要先讓乙個指標跳到下一級

*/ listnode* find(listnode *head1, listnode *head2)

else

listnode *ptemp = newhead;

while(p1 != null && p2 != null)

else

}while(p1 != null)

while(p2 != null)

return newhead;

}

合併兩個有序單鏈表

include using namespace std typedef struct nodenode,linklist void creatlist linklist l void insert int n,node p void show linklist l cout num head2 ne...

合併兩個有序單鏈表

思路 第一種 遞迴法 這個方法不好想,遞過去的時候做的事情是找到新的單鏈表的下乙個節點,歸的時候做的是告訴每個節點的next是什麼繫結關係,帶入資料就能知道怎麼回事 public listnode merge listnode a,listnode b if b null listnode newh...

合併兩個有序單鏈表

題目 給定兩個有序單鏈表的頭節點head1和head2,請合併兩個有序鍊錶,合併後的鍊錶依然有序,並返回合併後的鍊錶的頭節點。例如 0 2 3 7 null 1 3 5 7 9 null 合併後的鍊錶為 0 1 2 3 3 5 7 7 9 null 本題考察鍊錶基本操作 關鍵是能寫出時間複雜度o m...