摸鱼学大师
摸鱼学大师
全部文章
分类
未归档(8)
题解(541)
归档
标签
去牛客网
登录
/
注册
摸鱼学大师的博客
问月月不明?
TA的专栏
547篇文章
2人订阅
孤帆远影碧空尽
547篇文章
10953人学习
全部文章
(共25篇)
题解 | #最长无重复子数组#
来自专栏
题目主要信息: 题目给定一个数组,要找到其中最长的无重复的子数组的长度 子数组必须是数组中连续的一段 具体思路: 既然要找一段连续子数组的内不重复的长度,我们可以使用滑动窗口,窗口内都是不重复的,然后窗口右界不断向右滑,如果窗口内出现了重复数组,说明新加入的元素与之前的重复了,只需要窗口左界也向...
C++
哈希表
双指针
2022-02-01
0
370
题解 | #链表内指定区间反转#
来自专栏
题目的主要信息: 将一个节点数为 size 链表 m 位置到 n 位置之间的区间反转 进阶要求:时间复杂度 O(n)O(n)O(n),空间复杂度 O(1)O(1)O(1) 方法一:递归 具体做法: 如果m == 1,就相当于反转链表的前 n 元素; 如果 m != 1我们把 head 的索引视为...
C++
链表
递归
双指针
2021-12-06
13
1248
题解 | #调整数组顺序使奇数位于偶数前面(二)#
来自专栏
题目的主要信息: 输入一个长度为nnn的数组,经过调整使所有的奇数在前半部分,所有的偶数在后半部分 奇数与奇数之间、偶数与偶数之间的相对位置关系不固定 要求:时间复杂度O(n)O(n)O(n),空间复杂度O(n)O(n)O(n) 方法一:复制法 具体做法: 可以准备一个待返回的长度为nnn的数组...
C++
双指针
数组
2021-12-01
2
573
题解 | #字符逆序#
来自专栏
题目的主要信息: 一个字符串的内容颠倒过来,并输出 输入可能有空格 方法一:库函数 具体做法: 输入可能有空格因此我们用getline函数读取一行字符串,然后调用reverse函数从字符串首到尾直接颠倒。 #include<iostream> #include<string&g...
C++
双指针
字符串
2021-11-02
5
504
题解 | #输出单向链表中倒数第k个结点#
来自专栏
题目的主要信息: 输入一个单向链表,输出该链表中倒数第k个结点 链表的倒数第1个结点为链表的尾指针 异常返回空指针 k为0输出0 方法一:根据长度找倒数k 具体做法: 正常遍历,根据输入连接链表,一共n个值,链表长度为n。 然后比较链表长度是否比k小,如果比k小返回一个空链表,否则遍历n-k次即...
C++
链表
双指针
2021-10-26
28
799
题解 | #两个链表的第一个公共结点#
来自专栏
题目的主要信息: 两个无环的单向链表,找出它们的第一个公共结点 如果没有公共节点则返回空 要求:空间复杂度O(1)O(1)O(1),时间复杂度O(n)O(n)O(n) 方法一:长度比较法 具体做法: 我们可以分别统计两个链表的长度,然后对于较长的一个链表先走长度之差这么多步,在同步往后遍历,遇到...
双指针
链表
Java
2021-10-02
13
738
题解 | #链表中倒数最后k个结点#
来自专栏
题目的主要信息: 一个长度为nnn的链表,返回原链表中从倒数第k个结点至尾节点的全部节点 如果该链表长度小于k,请返回一个长度为 0 的链表 要求:时间复杂度O(n)O(n)O(n),空间复杂度O(n)O(n)O(n),进阶要求空间复杂度O(1)O(1)O(1) 方法一:先找长度再找最后k 具体...
C++
双指针
链表
2021-10-01
0
418
题解 | #找出重复的数#
来自专栏
题目的主要信息: 数组中n+1个元素,包括1到n的所有整数 找到重复的那个数字 额外要求:时间复杂度O(n)O(n)O(n),空间复杂度O(1)O(1)O(1) 方法一:排序法(能通过,时间不符合要求) 具体做法: 利用sort函数对数组排序,遍历数组,相邻两个数相同则找到所求。 class S...
数学
异或运算
排序
哈希表
双指针
2021-09-14
6
657
题解 | #牛牛的魔法值#
来自专栏
思路: 题目的主要信息: 数组a长度为n,且数字不重复,数组长度不为0 对于数组的某个连续子数组而言,区间内的最大值与次大值的异或值为该子数组的魔法值 整个数组中所有子区间的魔法值的最大值就是数组的魔法值,求这个值 方法一:数组模拟单调队列具体做法:如果我们找到了一个区间的最大值想要再找到次大值...
模拟
数组
栈
单调队列
双指针
2021-08-23
0
536
题解 | #牛牛的AC#
来自专栏
思路: 题目的主要信息: 字符串中只有字母AC 可选择任意k次变换将某个位置的字母变成另一个字母,求修改后的最长连续相同字母长度 方法一:暴力法具体做法:遍历字符串,每次遍历的点作为起点,如果起点为A,则第二次遍历后续遇到A直接计数,遇到C变换次数减1再计数,如果超过变换次数则与记录的最大值比较...
贪心
双指针
滑动窗口
字符串
2021-08-05
0
547
首页
上一页
1
2
3
下一页
末页