- 博客(6)
- 收藏
- 关注
原创 BM10 两个链表的第一个公共结点
解题思路:使用两个指针N1,N2,一个从链表1的头节点开始遍历,我们记为N1,一个从链表2的头节点开始遍历,我们记为N2。让N1和N2一起遍历,当N1先走完链表1的尽头(为null)的时候,则从链表2的头节点继续遍历,同样,如果N2先走完了链表2的尽头,则从链表1的头节点继续遍历,也就是说,N1和N2都会遍历链表1和链表2。因为两个指针,同样的速度,走完同样长度(链表1+链表2),不管两条链表有无相同节点,都能够到达同时到达终点。(N1最后肯定能到达链表2的终点,N2肯定能到达链表1的终点)
2022-04-17 00:20:13 145 2
原创 BM6 判断链表中是否有环
判断给定的链表中是否有环。如果有环则返回true,否则返回false。数据范围:链表长度 0 \le n \le 100000≤n≤10000,链表中任意节点的值满足 |val| <= 100000∣val∣<=100000要求:空间复杂度 O(1)O(1),时间复杂度 O(n)O(n)输入分为两部分,第一部分为链表,第二部分代表是否有环,然后将组成的head头结点传入到函数里面。-1代表无环,其它的数字代表有环,这些参数解释仅仅是为了方便读者自测调试。实际在编程时读入的
2022-04-16 15:45:25 89
原创 c++二分查找
class Solution {public: int search(vector<int>& nums, int target) { // write code here int len=nums.size(); if(len==0) { return -1; } int l=0,r=len-1; while(l<.
2022-04-16 09:07:31 129
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人