当前位置: 首页 > news >正文

LeetCode热题100刷题16:74. 搜索二维矩阵、33. 搜索旋转排序数组、153. 寻找旋转排序数组中的最小值、98. 验证二叉搜索树

74. 搜索二维矩阵

class Solution {
public:bool searchMatrix(vector<vector<int>>& matrix, int target) {int row = matrix.size();int col = matrix[0].size();for(int i=0;i<row;i++) {//先排除一下不存在的情况if(i>0&&matrix[i][0]>target && matrix[i-1][col-1]<target)return false;//锁定某一行之后使用二分查找if(matrix[i][0] <=target && matrix[i][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<int>& 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] <target && target <= nums[nums.size()-1]) left = mid+1;else right = mid-1;}}return -1;}
};

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

在这里插入图片描述

class Solution {
public:int findMin(vector<int>& 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<right) {int mid = left+(right-left)/2;if(nums[mid] < nums.back())right = mid;elseleft = 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<int>& 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<int> res;traversal(root,res);for(int i=1;i<res.size();i++) {if(res[i] <= res[i-1])return false;}return true;}
};

118. 杨辉三角

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

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

相关文章:

LeetCode热题100刷题16:74. 搜索二维矩阵、33. 搜索旋转排序数组、153. 寻找旋转排序数组中的最小值、98. 验证二叉搜索树

74. 搜索二维矩阵 class Solution { public:bool searchMatrix(vector<vector<int>>& matrix, int target) {int row matrix.size();int col matrix[0].size();for(int i0;i<row;i) {//先排除一下不存在的情况if(i>0&&matrix[i][0]>target…...

C++仿函数

在C中&#xff0c;我们经常需要对类中的元素进行比较&#xff0c;例如在排序、查找等操作中。为了使类更加灵活&#xff0c;我们可以通过自定义比较函数来实现不同的比较方式。在本文中&#xff0c;我们将探讨如何在类中使用仿函数和 Lambda 表达式来定义自定义比较函数。 1. …...

文献阅读:tidyomics 生态系统:增强组学数据分析

文献介绍 文献题目&#xff1a; The tidyomics ecosystem: enhancing omic data analyses 研究团队&#xff1a; Stefano Mangiola&#xff08;澳大利亚沃尔特和伊丽莎霍尔医学研究所&#xff09;、Michael I. Love&#xff08;美国北卡罗来纳大学教堂山分校&#xff09;、Ant…...

MySQL运维实战之Clone插件(10.1)使用Clone插件

作者&#xff1a;俊达 clone插件介绍 mysql 8.0.17版本引入了clone插件。使用clone插件可以对本地l或远程的mysql实例进行clone操作。clone插件会拷贝innodb存储引擎表&#xff0c;clone得到的是原数据库的一个一致性的快照&#xff0c;可以使用该快照数据来启动新的实例。cl…...

【系统架构设计】数据库系统(三)

数据库系统&#xff08;三&#xff09; 数据库模式与范式数据库设计备份与恢复分布式数据库系统分布式数据库的概念特点分类目标 分布式数据库的架构分布式数据库系统与并行数据库系统 数据仓库数据挖掘NoSQL大数据 数据库模式与范式 数据库设计 备份与恢复 分布式数据库系统…...

免费视频批量横版转竖版

简介 视频处理器 v1.3 是一款由是貔貅呀开发的视频编辑和处理工具&#xff0c;提供高效便捷的视频批量横转竖&#xff0c;主要功能&#xff1a; 导入与删除文件&#xff1a;轻松导入多个视频文件&#xff0c;删除不必要的文件。暂停与继续处理&#xff1a;随时暂停和继续处理。…...

内存管理(知识点)

c语言与c对于内存管理的区别 c语言中动态内存管理方式 malloc\calloc\realloc\free c内存管理方式 c兼容c语言所以c语言中的方式也可以使用 但是用起来太麻烦 所以通过new和delete操作符竞选动态内存管理 单个对象 c语言: int* p2(int*)malloc(sizeof(int)) c : int*p3 new…...

【雷丰阳-谷粒商城 】【分布式高级篇-微服务架构篇】【29】Sentinel

持续学习&持续更新中… 守破离 【雷丰阳-谷粒商城 】【分布式高级篇-微服务架构篇】【29】Sentinel 简介熔断降级什么是熔断什么是降级相同点不同点 整合Sentinel自定义sentinel流控返回数据使用Sentinel来保护feign远程调用自定义资源给网关整合Sentinel参考 简介 熔断降…...

防范UDP Flood攻击的策略与实践

UDP Flood攻击是一种常见的分布式拒绝服务&#xff08;DDoS&#xff09;攻击手段&#xff0c;通过向目标服务器发送大量无效的UDP数据包&#xff0c;消耗其网络带宽和处理资源&#xff0c;最终导致合法的网络服务无法正常运行。本文将深入探讨UDP Flood攻击的原理、常见的防御策…...

昇思25天学习打卡营第17天 | CycleGAN图像风格迁移互换

通过深入学习CycleGAN模型&#xff0c;我对无监督图像到图像的转换技术有了更深的理解。CycleGAN不仅能在没有成对训练样本的情况下实现域之间的转换&#xff0c;而且在保持内容结构的同时成功转换图像风格&#xff0c;这在许多应用中都非常有用&#xff0c;如艺术风格转换、季…...

Leetcode 2520. 统计能整除数字的位数

问题描述&#xff1a; 给你一个整数 num &#xff0c;返回 num 中能整除 num 的数位的数目。 如果满足 nums % val 0 &#xff0c;则认为整数 val 可以整除 nums 。 示例 1&#xff1a; 输入&#xff1a;num 7 输出&#xff1a;1 解释&#xff1a;7 被自己整除&#xff0…...

WEB前端08-综合案例(动态表格)

使用 HTML、CSS 和 JavaScript 创建动态表格 在本教程中&#xff0c;我们将创建一个动态表格&#xff0c;允许用户添加行、选择项目&#xff0c;并执行批量操作&#xff0c;如全选或删除选中的行。我们将通过 HTML、CSS 和 JavaScript 来实现这一功能。让我们逐步了解每个部分…...

【面试题】Redo log和Undo log

Redo log 介绍Redo log之前我们需要了解一下&#xff0c;mysql数据操作的流程&#xff1a; 上述就是数据操作的流程图&#xff0c;可以发现sql语句并不是直接操作的磁盘而是通过操作内存&#xff0c;然后进行内存到磁盘的一个同步。这里我们必须要了解一些区域&#xff1a; 缓…...

开发实战经验分享:互联网医院系统源码与在线问诊APP搭建

作为一名软件开发者&#xff0c;笔者有幸参与了多个互联网医院系统的开发项目&#xff0c;并在此过程中积累了丰富的实战经验。本文将结合我的开发经验&#xff0c;分享互联网医院系统源码的设计与在线问诊APP的搭建过程。 一、需求分析 在开发任何系统之前&#xff0c;首先要…...

springboot系列教程(十六):配置Actuator组件,实现系统监控

一、Actuator简介 1、监控组件作用 在生产环境中&#xff0c;需要实时或定期监控服务的可用性。Spring Boot的actuator&#xff08;健康监控&#xff09;功能提供了很多监控所需的接口&#xff0c;可以对应用系统进行配置查看、相关功能统计等。 2、监控分类 Actuator 提供…...

单臂路由组网实验,单臂路由的定义、适用情况、作用

一、定义 单臂路由是指通过在路由器的一个接口上配置许多子接口,从而实现原来相互隔离的不同VLAN之间的互通。 子接口:把路由器上的实际的物理接口划分为多个逻辑上的接口,这些被划分的逻辑接口就是子接口。 二、适用情况 用在没有三层交换机,却要实现不同VLAN之间的互…...

【数据结构初阶】顺序表三道经典算法题(详解+图例)

Hello&#xff01;很高兴又见到你了~~~ 看看今天要学点什么来充实大脑吧—— 目录 1、移除元素 【思路图解】 【总结】 2、删除有序数组中的重复项 【思路图解】 【总结】 3、合并两个有序数组 【思路图解】 【总结】 至此结束&#xff0c;Show Time&#xff01; 1、…...

SpringBoot接入JPA连接数据库H2或MySQL例子

一&#xff0c;JPA相关的常用注解和对象 Entity&#xff0c;用于实体类声明语句之前&#xff0c;‌指出该Java类为实体类&#xff0c;‌将映射到指定的数据库表&#xff1b;Table&#xff0c;当实体类与其映射的数据库表名不同名时需要使用。‌该标注与Entity标注并列使用&…...

持续集成05--Gogs的安装与使用

前言 在持续集成/持续部署&#xff08;CI/CD&#xff09;的旅程中&#xff0c;版本控制系统是不可或缺的一环。当我们在使用jenkins&#xff0c;想要达到测试脚本有更新&#xff0c;就让项目自动去进行构建&#xff0c;或者当开发脚本有更新&#xff0c;也可以自动去构建的效果…...

C++--fill

把[first,last)之间的元素填充为val。 template<class ForwardIterator, class Type> void fill( ForwardIterator first, //起始迭代器 ForwardIterator last, //结束迭代器 const Type& val //设置的值 );源码剖析 template<class ForwardIterator, c…...

RuView:无摄像头环境下人体姿态追踪的创新方法探索

RuView&#xff1a;无摄像头环境下人体姿态追踪的创新方法探索 【免费下载链接】RuView Production-ready implementation of InvisPose - a revolutionary WiFi-based dense human pose estimation system that enables real-time full-body tracking through walls using com…...

OpenClaw调试技巧:GLM-4.7-Flash任务执行日志分析与问题定位

OpenClaw调试技巧&#xff1a;GLM-4.7-Flash任务执行日志分析与问题定位 1. 为什么需要关注OpenClaw的调试日志 上周我在尝试用OpenClaw自动整理项目文档时&#xff0c;遇到了一个奇怪的现象&#xff1a;任务明明显示执行成功&#xff0c;但最终生成的Markdown文件却缺失了关…...

绝区零一条龙自动化工具:从机械操作到智能游戏的进化指南

绝区零一条龙自动化工具&#xff1a;从机械操作到智能游戏的进化指南 【免费下载链接】ZenlessZoneZero-OneDragon 绝区零 一条龙 | 全自动 | 自动闪避 | 自动每日 | 自动空洞 | 支持手柄 项目地址: https://gitcode.com/gh_mirrors/ze/ZenlessZoneZero-OneDragon 当你第…...

老旧电脑焕新:OpenClaw+GLM-4.7-Flash在4GB内存设备上的优化运行方案

老旧电脑焕新&#xff1a;OpenClawGLM-4.7-Flash在4GB内存设备上的优化运行方案 1. 为什么要在老旧电脑上部署AI助手&#xff1f; 去年整理书房时&#xff0c;我翻出一台2015年的MacBook Air&#xff0c;4GB内存的配置在当下连浏览器开几个标签页都卡顿。正当准备将它送进回收…...

STM32串口通信实战:从零配置USART到数据收发(附代码)

STM32串口通信实战&#xff1a;从零配置USART到数据收发&#xff08;附代码&#xff09; 第一次接触STM32的串口通信时&#xff0c;我被各种术语搞得晕头转向——波特率、数据位、停止位、校验位...更别提那些看起来像天书一样的寄存器配置了。直到在项目中被逼着用USART和传感…...

解决90%部署难题:TVM模型序列化全流程解析与最佳实践

解决90%部署难题&#xff1a;TVM模型序列化全流程解析与最佳实践 你是否还在为深度学习模型部署时的兼容性问题头疼&#xff1f;当需要将训练好的模型从开发环境迁移到生产服务器&#xff0c;或是在不同硬件设备间移植时&#xff0c;是否经常遇到格式不兼容、性能下降或依赖冲…...

HunyuanVideo-Foley惊艳效果:AI生成的赛博朋克城市雨夜环境音效

HunyuanVideo-Foley惊艳效果&#xff1a;AI生成的赛博朋克城市雨夜环境音效 1. 效果展示&#xff1a;赛博朋克音效的沉浸式体验 HunyuanVideo-Foley 私有部署镜像带来的音效生成能力&#xff0c;让AI创作达到了专业音频工程师的水准。我们以"赛博朋克城市雨夜"为场…...

2026丨最火话题:关于java最新的进阶代码学习方法!+实战避坑!

​ 2026年Java进阶代码学习方法与实战避坑指南 Java进阶学习的核心方向 2026年Java生态的核心技术聚焦于云原生、高并发、AI集成及性能优化。掌握GraalVM、Quarkus等新兴框架,深入理解虚拟线程(Project Loom)和向量化计算(Project Panama)是进阶的关键。 模块化开发(JPM…...

Python-docx实战:如何用run对象精细控制Word文档样式(附完整代码示例)

Python-docx实战&#xff1a;用run对象精细控制Word文档样式的专业指南 在自动化办公和批量文档生成领域&#xff0c;Python-docx库已经成为处理Word文档的事实标准工具。对于需要生成合同、报告、发票等标准化文档的开发者而言&#xff0c;仅仅创建基础文本远远不够——精确控…...

论文aigc检测率多少算正常?超标后怎么快速降AI率达标?

论文aigc检测率多少算正常&#xff1f;超标后怎么快速降AI率达标&#xff1f; “我的论文AIGC检测率38%&#xff0c;这算正常吗&#xff1f;” “室友的才12%&#xff0c;我的47%&#xff0c;是不是完蛋了&#xff1f;” “学校说不能超过30%&#xff0c;我现在31%&#xff0c;…...