1.溢出问题。 LeetCode69 , int mid = l + (r - l + 1) / 2;会溢出,最后的测试用例2147483647, mid+1就超出了int的数据为范围: -2147483648 ~ +2147483647。 解决方法: 1)c++: int mid = (long long) l + r + 1 >> 2; 2.关于时间复杂度 l42时间复杂度为o(n) + o(n) = o(n),160时间复杂度为o(m+n) 。why?142时间主要消耗在了寻找相遇点和入环点,寻找走的距离没有超过链表长度,所以是0(n)。而相交链表是实打实的要走完链表,所以是0(m+n)。 3.善用三元运算符