讲道理的豹子说这不是bug
讲道理的豹子说这不是bug
全部文章
分类
归档
标签
去牛客网
登录
/
注册
讲道理的豹子说这不是bug的博客
TA的专栏
99篇文章
6人订阅
刷题题解(c++)
96篇文章
900人学习
算法知识总结
3篇文章
859人学习
全部文章
(共100篇)
题解 | #【模板】队列#
#include <iostream> using namespace std; int main() { int n = 0; cin >> n; int res[100000]; int end = 0; int start = ...
2024-01-25
0
145
题解 | #点击消除#
#include <iostream> #include <stack> using namespace std; int main() { string str; string str1 = ""; stack<char&...
2024-01-24
0
158
题解 | #逆波兰表达式求值#
#include <sys/ucontext.h> class Solution { public: int evalRPN(vector<string>& tokens) { int num = 0; stack<i...
2024-01-24
0
146
题解 | #栈的压入、弹出序列#
class Solution { public: bool IsPopOrder(vector<int>& pushV, vector<int>& popV) { // 特殊情况 if (pushV.size() == ...
2024-01-18
0
203
题解 | #顺时针旋转矩阵#
来自专栏
方法:将数组通过对角线对称的进行元素交换,然后再将每个数组进行翻转。时间复杂度:o(n2)空间复杂度:o(1) class Solution { public: vector<vector<int> > rotateMatrix(vector<vector<...
2023-10-23
0
232
题解 | #螺旋矩阵#
来自专栏
方法:边界模拟法思路:这道题就是一个简单的模拟,我们想象有一个矩阵,从第一个元素开始,往右到底后再往下到底后再往左到底后再往上,结束这一圈,进入下一圈螺旋。具体做法:step 1:首先排除特殊情况,即矩阵为空的情况。step 2:设置矩阵的四个边界值,开始准备螺旋遍历矩阵,遍历的截止点是左右边界或者...
2023-10-18
0
288
题解 | #旋转数组#
来自专栏
方法:翻转数组可以很容易的知道右移次数等于数组的元素个数时等于没有移动,所以右移m位,其实等同于右移m%n位;1、先翻转数组的所有元素;2、翻转数组的前m个元素;2、翻转数组的剩余n-m个元素。就可以得到右移m位的数组。时间复杂度:o(n)空间复杂度:o(1) class Solution { pu...
2023-10-18
0
247
题解 | #主持人调度(二)#
来自专栏
方法:贪心算法具体步骤:使用两个辅助数组分别存储节目的开始时间和结束时间;对上面两个数组进行排序(从小到大)遍历n个活动,如果某个活动开始的时间大于之前活动结束的时候,当前主持人就够了,活动结束时间往后一个。若是出现之前活动结束时间晚于当前活动开始时间的,则需要增加主持人。时间复杂度:o(nlog2...
2023-10-17
0
318
题解 | #分糖果问题#
来自专栏
方法:贪心算法将每个小孩的糖果数都初始化为1,再遍历数组根据相邻两个孩子的得分情况来更新糖果数目,这样就能得到最少的糖果数具体做法:step 1:使用一个辅助数组记录每个位置的孩子分到的糖果,全部初始化为1.step 2:从左到右遍历数组,如果右边元素比相邻左边元素大,意味着在递增,糖果数就是前一个...
2023-10-16
0
388
题解 | #接雨水问题#
来自专栏
方法:双指针step 1:检查数组是否为空的特殊情况step 2:准备双指针,分别指向数组首尾元素,代表最初的两个边界step 3:指针往中间遍历,遇到更低柱子就是底,用较短的边界减去底就是这一列的接水量,遇到更高的柱子就是新的边界,更新边界大小。时间复杂度:o(n)空间复杂度:o(1) class...
2023-10-16
1
359
首页
上一页
1
2
3
4
5
6
7
8
9
10
下一页
末页