Leetcode | Binary search | 22. 74. 162. 33. 34. 153.

22. Generate Parentheses

要意识到只要还有左括号,就可以放到path里。只要右括号数量小于左括号,也可以放进去。就是valid的组合。recurse两次

74. Search a 2D Matrix

看成sorted list就好。直接用m*n表示最后一位的index,并且每次只需要

int x = mid / n;

int y = mid % n;

就可以算出位置。

值得注意的是左闭右开和左开右闭的写法

162. Find Peak Element

当一个middle不是peak的时候,middle和旁边的两个element有三种可能:单增,单减,波谷

单增/单减的话,比middle大的那边是有可能有peak的,因为如果增大再在某处减小,就有peak,如果一直增大,那么在起头/结尾的地方会有peak因为 nums[-1] = nums[n] = -∞

波谷的话,随便走一边就行

注意处理mid在最开始和最后的情况,mid-1和mid+1有的时候不valid。比如mid-1不valid的情况,就要看mid+1是不是大于mid,如果是的话就废了,如果不是就是peak(当然本题不会出现废了的情况,因为一定有peak)

33. Search in Rotated Sorted Array

 把这个图画出来。

先比较start和mid,判断mid落在左边还是右边。

如果是左边,那么当taregt大于mid和当target太小了到小于start的程度,start就应该为mid+1

如果是右边,那么当target小于mid和当target太大了到大于end-1的程度,end就应该为mid

34. Find First and Last Position of Element in Sorted Array

lowerbound 方法:

 如果lowerbound不存在(没有比target大于等于的数字)那么直接-1,-1

如果存在,那么检查target的lowerbound是不是target,如果不是,-1,-1

如果是,那么target的lb就是左边界,target+1的lb再减1就是右边界

lowerbound咋写?背下来得了。

变化1:mid==target的时候与target<mid一样的选择

变化2:返回left

and下面这个方法不太理解。?

153. Find Minimum in Rotated Sorted Array

先判断是否处在一个单增的线上,如果是的话直接返回left就行。

如果不是,那么如果mid在左半边较大的线上(mid>=start),那么start = mid+1只在右边找

如果mid在右半边线上,最小值只会在左边。end=mid(因为有可能mid本身就是最小值)。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/14434.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

打印Winform控件实现简陋版的分页打印(C#)

本文的代码可以从这里获取&#xff1a;winformDemo.rar 张祥裕/分享的资源名称 - Gitee.com 作者的水平有限&#xff0c;如有错误&#xff0c;望指正。 为了简单起见&#xff0c;纸张大小&#xff0c;打印机等信息按照默认的来&#xff0c;本文的实现方案是&#xff1a;打印Pa…

C语言:反转一个单链表

Lei宝啊&#xff1a;个人主页 题目&#xff1a; 描述&#xff1a; 给你单链表的头节点 head &#xff0c;请你反转链表&#xff0c;并返回反转后的链表。 接口&#xff1a; struct ListNode* reverseList(struct ListNode* head){} 示例&#xff1a; 输入&#xff1a; head [1…

“深入解析SpringBoot:从入门到精通“

标题&#xff1a;Spring Boot&#xff1a;从入门到精通 摘要&#xff1a;本文将深入解析Spring Boot框架&#xff0c;从入门到精通&#xff0c;带你了解Spring Boot的基本概念、核心特性和使用方法&#xff0c;并提供示例代码帮助你快速上手。 正文&#xff1a; 一、什么是S…

全局ip代理安全吗? 手机设置全局代理方法详解

全局IP代理并不一定是安全的&#xff0c;因为全局IP代理会将所有网络流量都通过代理服务器进行转发&#xff0c;包括敏感信息和隐私数据。如果代理服务器受到黑客攻击或存在安全漏洞&#xff0c;可能会导致数据泄露和其他安全问题。因此&#xff0c;在使用全局IP代理时&#xf…

Spring Boot项目的创建

hi 大家好,又见面了,今天继续讲解Spring Boot 文章目录 &#x1f436;1.什么是Spring Boot?&#x1f436;2.Spring Boot的优势&#x1f436;3.Spring Boot项目创建&#x1f33c;3.1使用ieda创建&#x1f95d;3.1.1下载插件Spring Boot Helper&#x1f95d;3.1.2创建项目 &…

VS创建wsdl服务提供给java调用

文章目录 前言1.c#创建asp.net web服务1.1 创建ASP.NET Web应用程序1.2 添加服务类1.3 定义服务方法1.3 浏览服务1.4 发布服务1.5 IIS部署服务 2.Java中调用服务2.1 用动态客户端工厂类调用2.1.1 引入依赖2.1.2 调用测试代码2.1.3 测试结果 2.2 创建代理类进行调用2.2.1 使用ws…

vue3 如何获取env

标题import.meta.env是一个全局属性&#xff0c;它包含了许多有用的环境信息&#xff0c;比如MODE、BASE_URL等。你可以在任何Vue组件、模块或文件中使用它来获取这些环境变量。 console.log(import.meta.env.MODE); // 获取当前模式&#xff0c;比如 development 或 producti…

解决Oracle锁表问题

问题描述&#xff1a; 数据表不能修改或删除数据&#xff0c;如果操作则会卡住&#xff0c;这可能是锁表了。 解决步骤&#xff1a; &#xff08;1&#xff09;查看哪个表被锁 select b.owner,b.object_name,a.session_id,a.locked_mode from v$locked_object a,dba_object…

修改整数(有点坑,所以发出来了)

问题描述 小贝给了小聪一个正整数 x&#xff0c;但是小聪决定把这个数改掉。她可以把整数 x 每个位置上的数 t 改成 9-t。 请你帮助小聪来计算一下&#xff0c;如何把 x 改成一个最小的正整数&#xff0c;注意&#xff0c;不能出现首位为 0 的情况。 输入格式 输入一个正整数…

云原生环境下的安全风险与安全架构设计

随着云计算和容器技术的发展&#xff0c;云原生应用已经成为企业和开发者的新选择。然而&#xff0c;云原生环境也给企业带来了一系列安全挑战。本文将分析云原生环境下的安全风险&#xff0c;并提出相应的安全架构设计策略。 一、云原生环境下的安全风险 云原生环境具有动态性…

git:按照标签查询提交记录log日志

git log 可以查询提交历史&#xff0c;增加一些参数就可以对提交记录log日志进行过滤 # 查询标签v1.0.0之前提交的历史记录 git log v1.0.0 --prettyformat:"%s"# 查询标签v1.0.0之后提交的历史记录 git log v1.0.0.. --prettyformat:"%s"--prettyformat:…

ChatGLM-6B 部署与 P-Tuning 微调实战-使用Pycharm实战

国产大模型ChatGLM-6B微调部署入门-使用Pycharm实战 1.ChatGLM模型介绍 ChatGLM-6B 是一个开源的、支持中英双语的对话语言模型&#xff0c;基于 General Language Model (GLM) 架构&#xff0c;具有 62 亿参数。结合模型量化技术&#xff0c;用户可以在消费级的显卡上进行本…

《吐血整理》进阶系列教程-拿捏Fiddler抓包教程(14)-Fiddler断点(breakpoints)实战,篡改或伪造数据

1.简介 上一篇主要就讲解和分享Fiddler断点的理论和操作&#xff0c;今天宏哥就用具体例子&#xff0c;将上一篇中的理论知识实践一下。而且在实际测试过程中&#xff0c;有时候需要修改请求或响应数据&#xff0c;或者直接模拟服务器响应&#xff0c;此时可以使用fiddler进行…

js的sendBeacon方法介绍

js的sendBeacon方法介绍 Beacon API是一种轻量级且有效的将网页活动记录到服务器的方法。它是一个 JavaScript API&#xff0c;可帮助开发人员将少量数据&#xff08;例如分析或跟踪信息、调试或诊断数据&#xff09;从浏览器发送到服务器。 在本文中&#xff0c;我们将介绍B…

容斥原理 训练笔记

​ 容斥原理 设S是一个有限集&#xff0c;A_1,A_2…A_n是S的n个子集&#xff0c;则 ∣ S − ⋃ i 1 n A i ∣ ∑ i 0 n ( − 1 ) i ∑ 1 ≤ j 1 < j 2 . . . < j i ≤ n ∣ ⋂ k 1 i A j k ∣ |S-\bigcup_{i1}^{n}A_i|\sum_{i0}^{n}(-1)^i\sum_{1\leq j_1< j_2.…

基于长短期神经网络LSTM的位移监测,基于长短期神经网络的位移预测,LSTM的详细原理

目录 背影 摘要 LSTM的基本定义 LSTM实现的步骤 基于长短期神经网络LSTM的位移监测 完整代码: https://download.csdn.net/download/abc991835105/88098131 效果图 结果分析 展望 参考论文 背影 路径追踪预测,对实现自动飞行驾驶拥有重要意义,长短期神经网络是一种改进党的…

有效三角形的个数

给定一个包含非负整数的数组 nums &#xff0c;返回其中可以组成三角形三条边的三元组个数。 示例 1: 输入: nums [2,2,3,4] 输出: 3 解释:有效的组合是: 2,3,4 (使用第一个 2) 2,3,4 (使用第二个 2) 2,2,3 示例 2: 输入: nums [4,2,3,4] 输出: 4 代码如下&#xff1a;…

力扣75——队列

总结leetcode75中队列的算法题解题思路。 上一篇&#xff1a;力扣75——哈希表/哈希集合 以下代码大部分为本人所写&#xff0c;少部分为官方示例代码。 力扣75——队列 1 最近的请求次数2 Dota2 参议院1-2 解题总结 1 最近的请求次数 题目&#xff1a; 写一个 RecentCounter…

okvis

论文 Keyframe-Based Visual-Inertial SLAM Using Nonlinear Optimization 摘要 由于两种感知模式的互补性&#xff0c;视觉和惯性线索的融合在机器人中变得很流行。虽然迄今为止大多数融合策略都依赖于过滤方案&#xff0c;但视觉机器人界最近转向了非线性优化方法&#x…

【React Native】学习记录(二)——路由搭建和常见的开发技巧

模拟器设置成中文 在开发过程中发现&#xff0c;两个模拟器都不能输入中文&#xff0c;所以需要配置一下。 先说一下安卓&#xff0c;在弹出的输入框中查看设置&#xff0c;设置一下对应的languages即可&#xff1a; 在苹果模拟器中&#xff0c;跟苹果手机一样&#xff0c;打…