摘要: 首先做的时候降重不好处理。看了卡哥的视频后知道几个关键点:(以四数之和为例) 1 最开始确定的两个数,要降重的话,必须当前数与上一个数不同,即nums[i]!=nums[i-1}。 之所以这样,而不是i+1,是因为是先要包含符合条件的案例,然后再排除。+的话就直接排除了。 2 left和right, 阅读全文
posted @ 2024-01-13 16:34 yun-che 阅读(20) 评论(0) 推荐(0)
摘要: 可知首先要判断是否有环,然后给出目标的位置。 slow指针走一步,fast指针走两步。当这两个指针都进入环时,fast指针相当于slow指针只走了一步,因此肯定两者会相遇。 但这只是相遇点,不是环起始点,但根据计算可知,此时都以同样的单位速度时,再相遇时就可以得到相交点。 点击查看代码 class 阅读全文
posted @ 2024-01-12 18:00 yun-che 阅读(28) 评论(0) 推荐(0)
摘要: 始终要明确一个过程中只能完成一次操作,这样才能有序进行。当然错误情况主要集中与边界条件的处理。 这道题,最开始 点击查看代码 class Solution { public: ListNode *getIntersectionNode(ListNode *headA, ListNode *headB 阅读全文
posted @ 2024-01-12 16:07 yun-che 阅读(36) 评论(0) 推荐(0)
摘要: 学习到的有两点,leetcode好像不设置哨兵节点,需要的话要自己额外设置。 点击查看代码 ListNode*dummy=new ListNode(0); 还有的就是递归的使用,先把自己这一层任务干完,然后还要与下一个任务建立联系。 点击查看代码 class Solution { public: L 阅读全文
posted @ 2024-01-12 15:33 yun-che 阅读(14) 评论(0) 推荐(0)
摘要: 开始做的时候,错误吧List当作节点别名,而且开始当时没考虑给那个类增加size变量,导致判断链表中是否存在目标下标时,异常麻烦。 看了解答后,就把节点与list分开了,这时候又用到了,类初始化的问题。 点击查看代码 struct node{ int val; node*next; node(int 阅读全文
posted @ 2024-01-12 15:23 yun-che 阅读(34) 评论(0) 推荐(0)
摘要: 一开始确实没有思路,一堆限制条件有点无从下手。 一圈一圈走,找到边界条件,左闭右开。 循环圈数就是N/2. 然后起始和结束位置也会变化。 奇数圈时要额外判断。 点击查看代码 class Solution { public: vector<vector<int>> generateMatrix(int 阅读全文
posted @ 2024-01-11 23:02 yun-che 阅读(15) 评论(0) 推荐(0)
摘要: 也是滑动窗口的应用,但用到了哈希表。 哈希表一个索引,一个真值。索引可以是任何符号,因此可以表示一个事物的数量关系和对应关系.删除某个索引及真值时,要用迭代器,erase(it)。 find是查找索引返回迭代器。 点击查看代码 class Solution { public: int totalFr 阅读全文
posted @ 2024-01-11 16:33 yun-che 阅读(41) 评论(0) 推荐(0)
摘要: 滑动窗口相当于双指针的变形,通过j指向末尾边界,这样遍历就只有O(n)的数量级,再通过i指针作为起始边界,while循环确定最短的长度。因为i j所框定的边界像窗口,所以叫滑动窗口。 用于解决的问题是最优区间的问题,记忆方法是右遍历,左判断,确定最佳区间。 还有一个技巧是可以用INT_MAX表示一个 阅读全文
posted @ 2024-01-11 12:14 yun-che 阅读(32) 评论(0) 推荐(0)
摘要: 最开始做的时候没想到双指针法,用了简单的冒泡排序结果超时了,题解中的sort函数用的是快排。 点击查看代码 void quick_sort(int a[], int l, int r) { if (l < r) { int i,j,x; i = l; j = r; x = a[i]; while ( 阅读全文
posted @ 2024-01-11 11:31 yun-che 阅读(8) 评论(0) 推荐(0)
摘要: 这道题我用的是双指针法,left,right。通过while循环将目标元素全部放后面,left所代表下标就是剩余个数。但是最开始遇到了问题 点击查看代码 class Solution { public: int removeElement(vector<int>& nums, int val) { 阅读全文
posted @ 2024-01-10 19:00 yun-che 阅读(26) 评论(0) 推荐(0)