代码拉取完成,页面将自动刷新
package _021_merge_two_sorted_lists
import . "gitee.com/dllearn/geektime-algorithm-learn/structures"
// 21. 合并两个有序链表
// https://leetcode-cn.com/problems/merge-two-sorted-lists/
/**
* Definition for singly-linked list.
* type ListNode struct {
* Val int
* Next *ListNode
* }
*/
func mergeTwoLists(list1 *ListNode, list2 *ListNode) *ListNode {
if list1 == nil {
return list2
}
if list2 == nil {
return list1
}
var head *ListNode
var c *ListNode
if list1.Val <= list2.Val {
head = list1
list1 = list1.Next
} else {
head = list2
list2 = list2.Next
}
c = head
for list1 != nil && list2 != nil {
if list1.Val <= list2.Val {
head.Next = list1
head = head.Next
list1 = list1.Next
} else {
head.Next = list2
head = head.Next
list2 = list2.Next
}
}
if list1 == nil {
head.Next = list2
}
if list2 == nil {
head.Next = list1
}
return c
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。