牛客362459853号
牛客362459853号
全部文章
题解
未归档(1)
归档
标签
去牛客网
登录
/
注册
牛客362459853号的博客
全部文章
/ 题解
(共26篇)
题解 | #顺时针旋转矩阵#如何实现空间复杂度O(1)
描述 有一个NxN整数矩阵,请编写一个算法,将矩阵顺时针旋转90度。 给定一个NxN的矩阵,和矩阵的阶数N,请返回旋转后的NxN矩阵。 数据范围:0 < n < 300,矩阵中的值满足 0≤val≤1000 问题分析:  ...
C++
数组
数学
2022-02-26
0
483
题解 | #翻转单词序列#
class Solution { public: string ReverseSentence(string str) { &nb...
C++
字符串
2022-02-22
0
298
题解 | #数的划分#抽屉原理
假设n表示成1 1 1 1 ...111 总共n个1,那么先把前面k个1取出来出来, 接下来就是在后面n-k个1插入前面取出来的1(把这k个1当作挡板),总共有n-k+1个空,然后就是公式了。 只是我忘了公式是啥了。 有懂抽屉原理的人可以利用这个思想写,代码时间复杂度应该会比较低。
C++
数学
2021-11-28
2
533
题解 | #除自身以外数组的乘积#真正实现时间O(n),空间O(1)
问题分析: 问题本身不难,如果可以用除法,直接计算数组中每个元素的乘积 k,然后res[i]=k/nums[i]。 但是题目限定不能用除法,如果不限定时间复杂度的话,每个元素都遍历一遍原数租。 但是题目又限定了时间复杂度O(n)。那么应该如何实现呢。定义一个res[]数租,让res...
C++
数组
数学
并查集
2021-11-28
4
615
题解 | #找位置#巧妙解决输出格式问题
问题分析: 这个问题难就难在如何判断当前是否是最后一个出现的,因为输出格式有要求。最后一个的输出格式跟前面的不同, 那么我们可以转换一下思路,假设每次找到重复的值,每次只输出上一次出现的位置,并用tmp保存当前位置, 那么最后一次出现的位置就不会被输出出来,然后判断tmp是否==i...
C++
字符串
数据流
并查集
字符串匹配
2021-11-26
26
1140
题解 | #牛牛组数#
问题分析: 题目描述一大堆,实际上就是让你写大数加法,这就是一个脑筋急转弯。示例还特地不按数字大小排序的答案给出来, 就是怕你发现是找最大的x.size()-k+1个数字组成的最大数字 因为其他操作都是截取字符串,和求k-1个个位数的和。 最大和一定...
C++
字符串
脑筋急转弯
2021-11-26
0
522
题解 | #旋转链表#
描述 给定链表的头节点,旋转链表,降链表每个节点往右移动 k 个位置,原链表后 k 个位置的节点则依次移动到链表头。 即,例如链表 : 1->2->3->4->5 k=2 则返回链表 4->5->1->2->3 数据...
C++
链表
双指针
计数
2021-11-25
0
595
题解 | #被围绕的区域#
描述 给定一个 n*m 大小的的矩阵,矩阵中由 ‘X' 和 'O' 构成,找到所有被 'X' 围绕的区域,并将其用 'X' 填充。 例如: [['X','X','X','X'], ['X','O','O','X'], ['X','O','X...
C++
数组
并查集
计数
2021-11-24
0
608
题解 | #插入区间#
描述 给定一个无重叠的,按照区间起点升序排列的区间列表,在列表中插入一个新区间,如果有原区间有重合,则合并,请返回插入后的区间列表。 数据范围:区间列表长度满足 , 区间的左右端点满足 问题分析:插入区间,无非就是对要插入的区间...
C++
数组
数学
双指针
2021-11-24
0
617
题解 | #对角线遍历矩阵#
描述 给定一个大小为 n*m 的矩阵,请以对角线遍历并返回遍历结果 数据范围: ,矩阵中的元素满足 例1、输入:[[1,2,3],[4,5,6],[7,8,9]],输出: [1,2,4,7,5,3,6,8,9] 例2...
C++
数组
数学
快速选择
2021-11-24
0
699
首页
上一页
1
2
3
下一页
末页