newCoderTheWarrior
newCoderTheWarrior
全部文章
题解
未归档(3)
归档
标签
去牛客网
登录
/
注册
newCoderTheWarrior的博客
全部文章
/ 题解
(共4篇)
【Warrior刷题笔记】NC41 最长无重复子数组【记忆化滑动窗口+双指针+哈希】逐行注释
题目 原题链接 描述 给定一个长度为n的数组arr,返回arr的最长无重复元素子数组的长度,无重复指的是所有数字都不相同。 子数组是连续的,比如[1,3,5,7,9]的子数组有[1,3],[3,5,7]等等,但是[1,3,7]不是子数组。 要求:空间复杂度O(n),时间复杂度O(nlogn) 思路...
C++
数组
哈希表
双指针
滑动窗口
2021-12-24
4
610
题解 | #两个链表的第一个公共结点#
解法一 哈希表 解法一比较简单,考虑空间换时间。 1.遍历链表A,使用哈希表存储遍历过的节点; 2.遍历链表B,判断当前节点是否在1的哈希表中,如果在,返回该节点;如果不在,遍历下一节点; 3.如果B中所有节点都不在1的哈希表中,返回空。 代码 /** * Definition for singl...
C++
哈希表
链表
双指针
2021-12-23
0
376
题解 | #删除链表的倒数第n个节点# 【快慢指针】 详细注释 双超90
解题思路 此题可以使用快慢指针解法。 对于有关链表的删除操作一类题,记住一个小技巧就是新建一个假头,这样可以避免复杂的边界判断。 新建一个假头ans,并使其后继结点为head; 新建慢指针slow指向ans,快指针fast指向head; 先让快指针fast后移n个位置,之后快慢指针一起向后移动直至...
C++
双指针
链表
2021-12-16
0
438
题解 | #合并两个排序的链表#
解题思路 本题采用双指针解法。 代码 /** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(...
C++
双指针
链表
2021-12-14
0
393