INT32_MAX是c++中定义的宏常量,代表int类型32位整数的最大值 代码: classSolution{public:intminSubArrayLen(inttarget,vector<int>& nums){//初始化滑动窗口的大小尾0//INT32_MAX是c++标准库中定义的一个宏函数,代表32位有符号整数的最大值//这里把窗口值的初始值设置为最大//防止第一次出现的窗口过于大,...
代码随想录的栈与队列简易示意图 C 对于直接用C语言来说,两者都是通过malloc一个一维数组直接手动模拟,区别是stack可以直接用一个stkTop来控制入栈出栈;而queue则需要head和tail两个值的变化实现入队出队。 C++ 对于C++而言,就需要搞清楚用的是哪一个STL(C++标准库),通过对代码随想录的解读,现在用的比较多的应该...
下面代码中的bfs代码与广搜理论基础中的模板基本一样,只是本题不仅要判断将要遍历的节点是否之前遍历过,还要判断其是否是陆地节点。 class Solution { private: int dir[4][2] = {0, 1, 1, 0, -1, 0, 0, -1}; // 四个方向 void bfs(vector<vector<char>>& grid, vector<vector<bool>>& visited...
代码随想录刷题笔记 代码随想录 数组 704. 二分查找 力扣题目链接 class Solution { public int search(int[] nums, int target) { int left = 0, right = nums.length-1; while (left <= right) { int mid = (left + right) / 2; if (nums[mid] == target) { return mid; } else if ...
👉 在线笔记:https://du1in9.github.io/code-thinking[https://du1in9.github.io/code-thinking] 第...
给定一个 n 个元素有序的**(升序)**整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。 输入: nums = [-1,0,3,5,9,12], target = 9 输出: 4 解释: 9 出现在 nums 中并且下标为 4 ...
因此,在子集问题的递归函数代码中需要在进入函数之后立马收集结果。 递归三部曲: 确定递归函数的参数和返回值:由于是对全局变量(全局vector)进行处理,因此递归函数不需要返回值。函数为:void backTracking(vector<int>& nums, int startIndex);这里的startIndex用于标记本层递归遍历的起始元素。 确定终止条件:本题不...
代码如下: vector<vector<int>>threeSum(vector<int>&nums){vector<vector<int>>result;sort(nums.begin(),nums.end());intsum;for(inti=0;i<nums.size();i++){if(nums[i]>0)returnresult;if(i>0&&nums[i]==nums[i-1])continue;intleft=i+1,right=nums.size()-1;while(left<right){sum=num...
这里我直接把代码随想录的一部分我认为的重点拖了过来,真的总结的特别好!!! 一般来说哈希表都是用来快速判断一个元素是否出现集合里。 对于哈希表,要知道哈希函数和哈希碰撞在哈希表中的作用。 哈希函数是把传入的key映射到符号表的索引上。 哈希碰撞处理有多个key映射到相同索引上时的情景,处理碰撞的普遍方式是拉...
以下为代码随想录给出的保姆级代码! class Solution { private: int result; int traversal(TreeNode* cur) { // 空节点,该节点有覆盖 if (cur == NULL) return 2; int left = traversal(cur->left); // 左 int right = traversal(cur->right); // 右 // 情况1 // 左右节点都有覆盖 if (left...