Zenn
😸

21. Merge Two Sorted Lists

2025/03/13に公開
2つのソート済み連結リスト list1 と list2 の先頭ノードが与えられます。

この2つのリストを1つのソート済みリストにマージしてください。マージは、最初の2つのリストのノードをつなぎ合わせて行います。

マージされた連結リストの先頭ノードを返してください。

例 1:
入力: list1 = [1,2,4], list2 = [1,3,4]
出力: [1,1,2,3,4,4]

例 2:
入力: list1 = [], list2 = []
出力: []

例 3:
入力: list1 = [], list2 = [0]
出力: [0]

・リストのいずれかが null の場合

list1 が null なら、list2 を返す。
list2 が null なら、list1 を返す。

・再帰的な比較と結合
list1.val が list2.val より小さい場合、list1 を head に設定し、head.next に再帰的に list1.next と list2 を結合する。
逆に、list2.val が小さい場合も同様。

Discussion

ログインするとコメントできます