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;     } };  

相关内容

热门资讯

一分钟内幕!科乐吉林麻将系统发... 一分钟内幕!科乐吉林麻将系统发牌规律,福建大玩家确实真的是有挂,技巧教程(有挂ai代打);所有人都在...
一分钟揭秘!微扑克辅助软件(透... 一分钟揭秘!微扑克辅助软件(透视辅助)确实是有挂(2024已更新)(哔哩哔哩);1、用户打开应用后不...
五分钟发现!广东雀神麻雀怎么赢... 五分钟发现!广东雀神麻雀怎么赢,朋朋棋牌都是是真的有挂,高科技教程(有挂方法)1、广东雀神麻雀怎么赢...
每日必看!人皇大厅吗(透明挂)... 每日必看!人皇大厅吗(透明挂)好像存在有挂(2026已更新)(哔哩哔哩);人皇大厅吗辅助器中分为三种...
重大科普!新华棋牌有挂吗(透视... 重大科普!新华棋牌有挂吗(透视)一直是有挂(2021已更新)(哔哩哔哩)1、完成新华棋牌有挂吗的残局...
二分钟内幕!微信小程序途游辅助... 二分钟内幕!微信小程序途游辅助器,掌中乐游戏中心其实存在有挂,微扑克教程(有挂规律)二分钟内幕!微信...
科技揭秘!jj斗地主系统控牌吗... 科技揭秘!jj斗地主系统控牌吗(透视)本来真的是有挂(2025已更新)(哔哩哔哩)1、科技揭秘!jj...
1分钟普及!哈灵麻将攻略小,微... 1分钟普及!哈灵麻将攻略小,微信小程序十三张好像存在有挂,规律教程(有挂技巧)哈灵麻将攻略小是一种具...
9分钟教程!科乐麻将有挂吗,传... 9分钟教程!科乐麻将有挂吗,传送屋高防版辅助(总是存在有挂)1、完成传送屋高防版辅助透视辅助安装,帮...
每日必看教程!兴动游戏辅助器下... 每日必看教程!兴动游戏辅助器下载(辅助)真是真的有挂(2025已更新)(哔哩哔哩)1、打开软件启动之...