不会做题的小菜鸡
不会做题的小菜鸡
全部文章
题解
归档
标签
去牛客网
登录
/
注册
不会做题
下面的这道题怎么做呀?
全部文章
/ 题解
(共109篇)
题解 | #包含min函数的栈#
来自专栏
思路 用两个栈来实现 一个是普通栈,处理入栈出栈的问题 另一个是最小栈,装的是普通栈中目前的最小值,随着普通栈的入栈退栈进行同时变化 方法一:利用已有栈写法(c++) 关键是一定要保证最小值栈在实时跟随普通栈的变化,这样维护的最小值栈的栈顶才能随时返回来题干中要求的最小值 class S...
栈
2021-07-18
2
786
题解 | #字符串变形#
来自专栏
思路 python利用split函数分隔单词成列表,倒置列表后改变大小写,最终串成一个最终的字符串 双指针来取单词前后位置 方法一:借助list 用split函数分隔成单词列表,倒置的方法很好写 class Solution: def trans(self, s, n): ...
双指针
2021-07-18
5
1580
题解 | #寻找第K大#
来自专栏
思路 本题是一个排序问题,可选的排序方案很多,其中冒泡、选择等O(n^2)时间的排序方案代价较高,选用快排、堆排、分治算法是比较省时的方案。直接调用c++内置sort函数是最好的办法。 ###方法一:调用sort函数排序 class Solution { public: static boo...
排序
2021-07-18
8
1325
题解 | #拼接所有的字符串产生字典序最小的字符串#
来自专栏
思路 我们知道string类型是重载了比较符的,所以可以直接用比较符进行比较,比较规则就是按字典序。因此我们只需要调用sort函数重载cmp函数指定比较规则即可 方法一:sort重载cmp函数 cmp函数中要规定两字符串的比较规则是: s1 + s2 < s2 + s1保证这样的字典序才...
排序
2021-07-18
1
852
题解 | #矩阵元素查找#
来自专栏
思路 暴力搜索,双重循环遍历 依据有序性按照一定顺序来查找 方法一:暴力搜索 双重循环直接遍历所有元素找到指定元素 class Solution { public: vector<int> findElement(vector<vector<int> >...
二分
2021-07-17
0
621
题解 | #完全二叉树结点数#
来自专栏
思路 最直观的思路就是将所有的结点数一遍,这样得到最终结果的时间代价就是O(N) 上面一个方法忽略了我们的树是完全二叉树这一性质,完全二叉树满足的特点就是要么是一个满二叉树,要么除了最后一层以外其它层全满,最后一层的叶子结点必须从左到右不间隔的排布。 虽然完全二叉树没有计算结点的方法 但是满二叉树...
递归
完全二叉树
满二叉树
树
2021-07-17
3
863
题解 | #子数组最大乘积#
来自专栏
思路 此题是一类动态规划问题,具有重叠子问题和最优子结构的特点,通过找到状态转移方程式来解决问题 方法一:动态规划 我们可以定义一个动态规划数组dp[i],其表示的是从索引0到索引i位置为止,这一段区间存在的子数组的最大乘积保存在dp[i]中,因此对于一个n长的数组,最终返回结果为max(dp[0...
动态规划
2021-07-16
4
940
题解 | #二叉搜索树的第k个结点#
来自专栏
思路 既然题中的树是二叉搜索树,所以中序遍历顺序即为从小到大的访问顺序。这一点要直接反应过来!!!知道是中序遍历后就采用递归或非递归两种方法都可以了 方法一:递归中序遍历 递归中序的函数结构为 递归左子树 访问当前结点 递归右子树 /* struct TreeNode { int v...
中序遍历
递归
非递归
2021-07-15
1
897
题解 | #丑数#
来自专栏
思路 根据题中定义,我们了解到丑数都是可以拆分为 2^x*3^y*5^z 的数字,因此思路集中在解决质因数的分解问题上,如何巧妙地利用质因数会衍生出不同的思路 暴力解法(超时):直接判断每一个自然数是否是符合丑数的质因数分解规律 最小堆解法:维护一个丑数最小堆,每次从堆顶取出当前最小值i,并再将2...
最小堆
动态规划
2021-07-15
5
1071
首页
上一页
2
3
4
5
6
7
8
9
10
11
下一页
末页