zoukankan      html  css  js  c++  java
  • 【LeetCode刷题】相交链表问题:妙解

    • /**  这个可太难想到了,双指针法!
    •  * Definition for singly-linked list. 
    •  * struct ListNode { 
    •  *     int val; 
    •  *     ListNode *next; 
    •  *     ListNode(int x) : val(x), next(NULL) {} 
    •  * }; 
    •  */  
    •  auto speedup=[](){  
    •     std::ios::sync_with_stdio(false);  
    •     cin.tie(nullptr);  
    •     cout.tie(nullptr);  
    •     return nullptr;  
    • }();  
    • class Solution {  
    • public:  
    •     ListNode *getIntersectionNode(ListNode *headA, ListNode *headB) {  
    •         /** 
    •         a  
    •             -  c  
    •         b / 
    •         a->end : a+c    a移到b head 
    •         b->end : b+c    b移到a head 
    •         会在a+b+c 步之后再交汇点相遇 
    •         如果有交点 会在交点相会 
    •         如果没有交点会同时到达NULL 
    •         */  
    •         if(headA == NULL || headB == NULL){  
    •             return NULL;  
    •         }  
    •         ListNode * la = headA;  
    •         ListNode * lb = headB;  
    •         while(la != lb){  
    •             la = la ? la->next : headB;  
    •             lb = lb ? lb->next : headA;  
    •         }  
    •         return la;  
    •     }  
    • };  

         

      来自 <http://www.planetb.ca/projects/syntaxHighlighter/popup.php>

  • 相关阅读:
    poj2774
    GDOI2012 字符串
    poj3261
    poj1743
    bzoj 2565 manacher
    归档-ios
    学习
    ViewPager动态加载、删除页面
    android:ScrollView嵌套ListView的问题
    Android学习笔记进阶之在图片上涂鸦(能清屏)
  • 原文地址:https://www.cnblogs.com/xukaiae86/p/11857943.html
Copyright © 2011-2022 走看看