《剑指offer》两个链表的第一个公共节点
生活随笔
收集整理的這篇文章主要介紹了
《剑指offer》两个链表的第一个公共节点
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目:輸入兩個鏈表,找出它們的第一個公共結點。
解析:暴力更直接。直接遍歷兩個鏈表分別存儲到list1、list2,然后在list1和list2中找公共節點就好了
/* public class ListNode {int val;ListNode next = null;ListNode(int val) {this.val = val;} }*/ import java.util.ArrayList; import java.util.List; public class Solution {public ListNode FindFirstCommonNode(ListNode pHead1, ListNode pHead2) {if(pHead1==null||pHead2==null){//其中一條鏈表為空,當然沒有公共節點了return null;}List<ListNode> list1 = new ArrayList<>();//存第1個鏈表的節點List<ListNode> list2 = new ArrayList<>();//存第2個鏈表的節點while (pHead1!=null){list1.add(pHead1);pHead1=pHead1.next;}while (pHead2!=null){list2.add(pHead2);pHead2=pHead2.next;}for(ListNode node1:list1){for(ListNode node2:list2){if(node2.val==node1.val){//找到了公共節點就返回了return node2;}}}return null;} }總結
以上是生活随笔為你收集整理的《剑指offer》两个链表的第一个公共节点的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 《剑指offer》链表分割
- 下一篇: 《剑指offer》数字在排序数组中出现的