チェーンテーブル-2つの順序付きチェーンテーブルを結合
1365 ワード
2つの順序付きチェーンテーブルを新しい順序付きチェーンテーブルに結合して返します.新しいチェーンテーブルは、指定された2つのチェーンテーブルのすべてのノードを接合することによって構成されます.
例:
与えられた2つの順序付きチェーンテーブルについて、2つのチェーンテーブルを結合する方法は、依然として順序付きである.
構想:チェーンテーブルの最初のノードのvalue値の大きさを判断し、順番に並べ、値が小さいのは新しいチェーンテーブルのheadである.次にチェーンテーブルの各ノードを遍歴して取り出し、valueの大きさを比較して順次操作し、チェーンテーブルのあるノードのnextが空の場合、遍歴は終了する.同時に、まだ終わっていないチェーンテーブルを新しいチェーンテーブルの尾につなぎます.
実装2:
実装2:再帰的な方法を採用:
参照先:https://blog.csdn.net/jxh_123/article/details/38371523
例:
:1->2->4, 1->3->4
:1->1->2->3->4->4
与えられた2つの順序付きチェーンテーブルについて、2つのチェーンテーブルを結合する方法は、依然として順序付きである.
構想:チェーンテーブルの最初のノードのvalue値の大きさを判断し、順番に並べ、値が小さいのは新しいチェーンテーブルのheadである.次にチェーンテーブルの各ノードを遍歴して取り出し、valueの大きさを比較して順次操作し、チェーンテーブルのあるノードのnextが空の場合、遍歴は終了する.同時に、まだ終わっていないチェーンテーブルを新しいチェーンテーブルの尾につなぎます.
実装2:
public ListNode mergeTwoLists(ListNode l1, ListNode l2) {
if(l2==null){
return l1;
}
if(l1==null){
return l2;
}
ListNode head = null;//
ListNode p1 = l1;// l1
ListNode p2 = l2;// l2
if(l1.val
実装2:再帰的な方法を採用:
public ListNode mergeTwoLists(ListNode l1, ListNode l2) {
ListNode head = null;
if(l1==null){
return l2;
}
if(l2==null){
return l1;
}
if(l1.val
参照先:https://blog.csdn.net/jxh_123/article/details/38371523