LeetCode热题100刷题16:74. 搜索二维矩阵、33. 搜索旋转排序数组、153. 寻找旋转排序数组中的最小值、98. 验证二叉搜索树
创始人
2025-01-09 14:05:30
0

74. 搜索二维矩阵

class Solution { public:     bool searchMatrix(vector>& matrix, int target) {         int row = matrix.size();         int col = matrix[0].size();          for(int i=0;i             //先排除一下不存在的情况             if(i>0&&matrix[i][0]>target && matrix[i-1][col-1]=target) {                 int begin=0,end=col-1;                 while(begin<=end) {                     int mid = begin + (end-begin)/2;                     if(matrix[i][mid] > target) {                         end = mid-1;                     }                     else if(matrix[i][mid] < target) {                         begin = mid+1;                     }                     if(matrix[i][mid]==target)                         return true;                 }             }         }         return false;     } }; 

33. 搜索旋转排序数组

二分法,稍微区分了一下左侧有序还是右侧有序
在这里插入图片描述

class Solution { public:     int search(vector& nums, int target) {         if(nums.size()==0)             return -1;         if(nums.size()==1)             return nums[0]==target?0:-1;         int left = 0, right = nums.size()-1;          while(left<=right) {             int mid = left+(right-left)/2;             if(nums[mid]==target)                 return mid;             else if(nums[0] <= nums[mid]) {                 if(nums[0] <=target && target < nums[mid])                     right = mid-1;                 else                      left = mid+1;             }             else {                 if(nums[mid] 

153. 寻找旋转排序数组中的最小值

在这里插入图片描述

class Solution { public:     int findMin(vector& nums) {         if(nums.size()==1)             return nums[0];         int n = nums.size()-1;         int left = -1,right = n;         int res = nums[0];         if(nums[0] < nums[n])             return res;         while(left+1             int mid = left+(right-left)/2;             if(nums[mid] < nums.back())                 right = mid;             else                 left = mid;         }         return nums[right];     } }; 

98. 验证二叉搜索树

通过中序遍历,得到有序的数组,在判断数组是否严格递增

/**  * Definition for a binary tree node.  * struct TreeNode {  *     int val;  *     TreeNode *left;  *     TreeNode *right;  *     TreeNode() : val(0), left(nullptr), right(nullptr) {}  *     TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}  *     TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}  * };  */ class Solution { public:     void traversal(TreeNode* root,vector& res) {         if(root==NULL)             return;         if(root->left)             traversal(root->left,res);         res.push_back(root->val);         if(root->right)             traversal(root->right,res);     }     bool isValidBST(TreeNode* root) {         if(!root)             return true;         vector res;         traversal(root,res);         for(int i=1;i             if(res[i] <= res[i-1])                 return false;         }         return true;     } }; 

118. 杨辉三角

res即dp数组,寻找res[i][j]的更新规律

class Solution { public:     vector> generate(int numRows) {         vector> res(numRows);         for(int i=0;i             res[i].resize(i+1);             res[i][0] = res[i][i] = 1;             for(int j=1;j                 res[i][j] = res[i-1][j]+res[i-1][j-1];             }         }         return res;     } };  

相关内容

热门资讯

绝活儿辅助!广西老友玩老是输怎... 绝活儿辅助!广西老友玩老是输怎么办(辅助挂)都是真的有辅助app(讲解有挂)在进入广西老友玩老是输怎...
法门辅助!福建13水插件(辅助... 法门辅助!福建13水插件(辅助挂)一贯是有辅助技巧(有挂技术)1、许多玩家不知道福建13水插件辅助怎...
办法辅助!潮友会app下载官方... 办法辅助!潮友会app下载官方辅助器(辅助挂)真是真的是有辅助app(有挂教程)该软件可以轻松地帮助...
妙招辅助!邯郸胡乐挂辅助(辅助... 妙招辅助!邯郸胡乐挂辅助(辅助挂)好像存在有辅助插件(有挂方略)1、上手简单,内置详细流程视频教学,...
教程书辅助!乐酷辅助(辅助挂)... 教程书辅助!乐酷辅助(辅助挂)其实存在有辅助脚本(有挂细节)乐酷辅助能透视中分为三种模型:乐酷辅助模...
学习辅助!决战卡五星辅助(辅助... 学习辅助!决战卡五星辅助(辅助挂)本来真的是有辅助软件(有人有挂)学习辅助!决战卡五星辅助(辅助挂)...
绝活辅助!边锋嘉兴麻将辅助器(... 绝活辅助!边锋嘉兴麻将辅助器(辅助挂)真是真的有辅助神器(新版有挂)1、边锋嘉兴麻将辅助器公共底牌简...
举措辅助!枫叶辅助器(辅助挂)... 举措辅助!枫叶辅助器(辅助挂)本来存在有辅助技巧(竟然有挂)1、下载好枫叶辅助器正确养号方法之后点击...
讲义辅助!点我达辅助(辅助挂)... 讲义辅助!点我达辅助(辅助挂)一直存在有辅助技巧(有人有挂)1、点我达辅助辅助器安装包、点我达辅助辅...
模块辅助!威信茶馆有挂的吗(辅... 模块辅助!威信茶馆有挂的吗(辅助挂)一直真的是有辅助脚本(揭秘有挂)1、玩家可以在威信茶馆有挂的吗线...