ACwing
脑瓜嗡嗡0608
冲鸭!
展开
-
ACwing 刷题 2022/3/18
+3道 第39场周赛题目42.栈的压入、弹出序列1.本题目算下来只有两种操作(1)栈顶元素和弹出序列当前元素不匹配,继续压入(如果弹出更不匹配了)(2)栈顶元素和弹出序列当前元素匹配,直接弹出栈顶元素(如果不弹,意味着要再弹出一些元素后才能得到该栈顶元素,必不正确)2.代码中为什么是while循环而非if、只判断一次呢?答:因为每弹出一个元素,我们的弹出序列移动到下一个元素,序列元素是新的,我们的栈顶元素也是新的!(因为弹出了旧的栈顶元素),如果只匹配一次,相当于跳过了当前栈顶元素、只将新压入.原创 2022-03-18 12:33:02 · 651 阅读 · 0 评论 -
ACwing 刷题 2022/3/17
40.顺时针打印矩阵class Solution {public: vector<int> printMatrix(vector<vector<int> > matrix) { vector<int> res; if(matrix.empty()) return res; int n=matrix.size(),m=matrix[0].size(); vector<vector&原创 2022-03-17 11:12:58 · 57 阅读 · 0 评论 -
ACwing 刷题 2022/3/14
34.链表中环的入口节点注意,我的错误在于两个指针初始化。错在指把快指针初始化成head->next->next,慢指针初始化成head,仔细想想这样相当于慢指针比快指针少走了一次!!!原创 2022-03-14 09:05:20 · 1641 阅读 · 0 评论 -
ACwing 刷题 2022/3/12
今日完成25.剪绳子题目类型:动态规划DP问题注意:和01背包还是有些区别,两种题目似乎都和求解某种情况下的最大值有关,背包问题的选不选物品对应于剪绳子问题的剪不剪。但剪绳子外层循环作为dp数组的下标,而背包问题内层循环对应于dp数组的下标。且本题不能用递归进行(个人想法)。class Solution {public: int maxProductAfterCutting(int length) { vector<int> dp(length+1,0原创 2022-03-12 10:12:41 · 1340 阅读 · 0 评论 -
ACwing 刷题 2022/3/11
2022.旋转数组的最小数字个人AC代码思路有些复杂,而且中间的很多错误都是在调试中改过来的。今日完成:注:最后一题的机器人是BFS类问题,里面有需要求一个数字每一位和的步骤。class Solution {public: int findMin(vector<int>& nums) { if(nums.size()==0) return -1; int left=0; int right=nums.size()-1原创 2022-03-11 11:21:10 · 164 阅读 · 0 评论 -
ACwing 刷题 2022/3/10
只记录做了的题目和感觉有收获的题目今日完成:18.重建二叉树好久没做这种基础题了,感觉都不回了……果然基础很重要。/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; *原创 2022-03-10 10:06:40 · 849 阅读 · 0 评论