题解 | #合并两个排序的链表#
合并两个排序的链表
https://www.nowcoder.com/practice/d8b6b4358f774294a89de2a6ac4d9337
/**
* public class ListNode {
* public var val: Int
* public var next: ListNode?
* public init(_ val: Int = 0, _ next: ListNode? = nil) {
* self.val = val
* self.next = next
* }
* }
*/
public class Solution {
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param pHead1 ListNode类
* @param pHead2 ListNode类
* @return ListNode类
*/
func Merge ( _ pHead1: ListNode?, _ pHead2: ListNode?) -> ListNode? {
// write code here
if pHead1 == nil {
return pHead2
}
if pHead2 == nil {
return pHead1
}
var node1 = pHead1
var node2 = pHead2
var res = ListNode()
var node = res
while node1 != nil && node2 != nil {
if node1!.val < node2!.val {
node.next = node1
node1 = node1!.next
} else {
node.next = node2
node2 = node2!.next
}
if let next = node.next {
node = next
}
}
if node1 == nil {
node.next = node2
}
if node2 == nil {
node.next = node1
}
return res.next
}
}

曼迪匹艾公司福利 136人发布