传送门
牛客面试笔试必刷101题 ----------------合并两个排序的链表
题目以及解析
题目

解题代码及解析
package main
import _"fmt"
import . "nc_tools"
/*
 * type ListNode struct{
 *   Val int
 *   Next *ListNode
 * }
 */
/**
 * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
 *
 * 
 * @param pHead1 ListNode类 
 * @param pHead2 ListNode类 
 * @return ListNode类
*/
func Merge( pHead1 *ListNode ,  pHead2 *ListNode ) *ListNode {
    head:=&ListNode{}
    dump:=head
    for pHead1!=nil||pHead2!=nil{
        if( pHead1!=nil&&pHead2!=nil){
            if pHead1.Val < pHead2.Val {
            head.Next = pHead1
            pHead1 = pHead1.Next
            } else {
                head.Next = pHead2
                pHead2 = pHead2.Next
                }
        }else if(pHead1!=nil){
            head.Next = pHead1
            pHead1 = pHead1.Next
            }else{
                head.Next = pHead2
                pHead2 = pHead2.Next 
            }
        head=head.Next
    }
    return dump.Next
}
 
解析:
这题依旧是一道合并链表题,题目比较简单,主要还是体现归并思想,主要还是理解归并思想的应用

![[BeginCTF]真龙之力](https://img-blog.csdnimg.cn/direct/e591f36df6794dddb7122a61014c010e.png)





![[Java][算法 哈希]Day 01---LeetCode 热题 100---01~03](https://img-blog.csdnimg.cn/direct/328ebc11a97342e0a853a61931fa8c22.png)










