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

leetcode原题: 最小值、最大数字

题目1:最小值

给定两个整数数组ab,计算具有最小差绝对值的一对数值(每个数组中取一个值),并返回该对数值的差

示例:

输入:{1, 3, 15, 11, 2}, {23, 127, 235, 19, 8}
输出:3,即数值对(11, 8)

 解题思路:

1.先对两个数组a和b进行升序排序

2.使用双指针,分别用来遍历两个数组

3.将两个指针所指的数值进行比较,将数值较小的向后移,不断缩小差值

4.直到循环结束,在这过程中,如果遇到两个数值相等,那么说明已经找到最小差值0了,不用继续找下去了。

Code:

class Solution {
public:int smallestDifference(vector<int>& a, vector<int>& b) {sort(a.begin(), a.end());sort(b.begin(), b.end());int pa = 0;  //a数组的下标int pb = 0;  //b数组的下标int na = a.size();  // a的长度int nb = b.size();  // b的长度long long minres = LLONG_MAX;  //保存最小差值while (pa < na && pb < nb) {// 更新最小差值minres = min(abs((long long)a[pa] - (long long)b[pb]), minres);// 数值较小的指针往后移,逐渐缩小差值if (a[pa] < b[pb]) {pa++;}else if (a[pa] > b[pb]) {pb++;}else {  // 若找到相等的两个数,直接返回最小差值0即可return 0;}}return (int)minres;}
};

题目2:最大数字

编写一个方法,找出两个数字ab中最大的那一个。不得使用if-else或其他比较运算符。

示例:

输入: a = 1, b = 2
输出: 2

解题思路:

因为题目要求不允许使用比较运算符以及if-else判断语句,所以我们不能直接进行比大小

数学公式上看,我们可以通过公式,计算出较大值:

Code:

class Solution {
public:int maximum(int a, int b) {//为了防止溢出,先将两个int类型的整数转成long longlong c=a;long d=b;int res=(int)((fabs(c-d)+c+d)/2);return res;}
};

 还有一种方式使用 移位+处理溢出

如果是负数,右移32位,结果为-1

 a < b:
 1 + (a - b) >> 31 == 0
 a > b:
 1 + (a - b) >> 31 == 1

Code:

class Solution {
public:int maximum(int a, int b) {long c = a, d = b;//注意这里是long,所以不是右移32位,而是64位int k = 1 + ((c - d) >> 63);return k * a + (!k) * b;}
};

相关文章:

leetcode原题: 最小值、最大数字

题目1&#xff1a;最小值 给定两个整数数组a和b&#xff0c;计算具有最小差绝对值的一对数值&#xff08;每个数组中取一个值&#xff09;&#xff0c;并返回该对数值的差 示例&#xff1a; 输入&#xff1a;{1, 3, 15, 11, 2}, {23, 127, 235, 19, 8} 输出&#xff1a;3&…...

Prompt2Model: Generating Deployable Models from Natural Language Instructions

本文是LLM系列文章&#xff0c;针对《 Prompt2Model: Generating Deployable Models from Natural Language Instructions》的翻译。 Prompt2Model&#xff1a;从自然语言指令生成可部署模型 摘要1 引言2 Prompt2Model框架3 参考实现4 实验设置5 实验结果6 讨论与结论不足道德…...

前端埋点 sendBeacon 替代方式

看英文文档真的很重要 sendBeacon 限制比较多, 容易跨域, 跨域时候还必须指定请求头, 不能使用通配符来解决跨域 文档地址 文档里面说 fetch 其实可以代替 sendBeacon 原文: Note: For use cases that need the ability to send requests with methods other than POST, or …...

面试官问我MySQL和MariaDB的联系和区别,这我能不知道?

&#x1f3c6;作者简介&#xff0c;黑夜开发者&#xff0c;CSDN领军人物&#xff0c;全栈领域优质创作者✌&#xff0c;CSDN博客专家&#xff0c;阿里云社区专家博主&#xff0c;2023年6月CSDN上海赛道top4。 &#x1f3c6;数年电商行业从业经验&#xff0c;历任核心研发工程师…...

1.网络空间搜素引擎

网络空间搜素引擎 https://cybermap.kaspersky.com/cn 世界所以带有ip的网络设备互联组成的空间叫做网络空间 地址 &#xff1a;shodan.io 简介 &#xff1a; 这句话还是有点东西得 。 区别&#xff1a; 平常得搜素引擎主要搜网页&#xff0c;shadan可以搜所以带有ip地址…...

《安富莱嵌入式周报》第321期:开源12导联便携心电仪,PCB AI设计,150M示波器差分探头,谷歌全栈环境IDX,微软在Excel推出Python

周报汇总地址&#xff1a;嵌入式周报 - uCOS & uCGUI & emWin & embOS & TouchGFX & ThreadX - 硬汉嵌入式论坛 - Powered by Discuz! 视频版&#xff1a; https://www.bilibili.com/video/BV1ju4y1D7A8/ 《安富莱嵌入式周报》第321期&#xff1a;开源12导…...

前端开发必备的网站

前端开发必备的网站及官网 说明&#xff1a; 这里记录了我本人平时开发所用到的网站&#xff0c;对我还是有帮助的&#xff0c;后续会接着补充进来&#xff0c;一方面是为了记录&#xff0c;另一方面也可以帮助到大家… 网站名称及描述网址Elememt-ui (组件库)Elememt-ui&…...

Java运行时jar时终端输出的中文日志是乱码

运行Jar时在控制台输出的中文日志全是乱码&#xff0c;这是因为cmd/bash默认的编码是GBK&#xff0c;只要把cmd的编码改成UTF-8即可 两种方式修改&#xff1a;临时修改和注册表永久修改 临时修改 只对当前的cmd页面有效&#xff0c;关闭后重新打开都会恢复成GBK, 打开cmd&am…...

Vue框架--Vue中el和data的两种写法

data与el的2种写法 1.el有2种写法 (1).new Vue时候配置el属性。 (2).先创建Vue实例&#xff0c;随后再通过vm.$mount(#root)指定el的值。 2.data有2种写法 (1).对象式 (2).函数式 如何选择&#xff1a;目前哪种写法都可以&#xff0c;以后学习到组件时&#xff…...

【数据结构】 二叉树面试题讲解->贰

文章目录 &#x1f30f;引言&#x1f384;[二叉树遍历](https://www.nowcoder.com/practice/4b91205483694f449f94c179883c1fef?tpId60&&tqId29483&rp1&ru/activity/oj&qru/ta/tsing-kaoyan/question-ranking)&#x1f431;‍&#x1f464;题目描述&#…...

C和SystemVerilog联合仿真

想要联合仿真一个c程序和verilog表示的硬件&#xff0c;可以用如下方法&#xff08;DPI&#xff09;&#xff1a; 先写一个.c文件funcs.c #include <stdio.h> #include "svdpi.h"extern int sayHello();void something() {printf("something\n");s…...

15-mongodb

一、 MongoDB 简介 1 什么是 MongoDB MongoDB 是一个基于分布式文件存储的数据库。由 C语言编写。在为 WEB 应用提供可扩展的高性能数据存储解决方案。 MongoDB 是一个介于关系数据库和非关系数据库之间的产品&#xff0c;是非关系数据库当中功能最丰富&#xff0c;最像关系…...

CSS学习笔记02

CSS笔记02 美化网页元素 为什么要美化网页 目的&#xff1a; 有效的传递页面信息美化网页、页面漂亮、才能吸引用户突显页面的主题提高用户的体验 span标签 span标签是短语内容的通用行内容器&#xff0c;它本身并没有任何特殊语义。 通常我们使用span标签来把我们想要重…...

为什么Java接口可以多继承,而类不可以?

个人主页&#xff1a;金鳞踏雨 个人简介&#xff1a;大家好&#xff0c;我是金鳞&#xff0c;一个初出茅庐的Java小白 目前状况&#xff1a;22届普通本科毕业生&#xff0c;几经波折了&#xff0c;现在任职于一家国内大型知名日化公司&#xff0c;从事Java开发工作 我的博客&am…...

自动化信息收集工具 水泽 使用教程

自动化信息收集工具 水泽 使用教程 1.水泽简介&安装2.使用教程3.测试使用1.水泽简介&安装 一条龙服务,只需要输入根域名即可全方位收集相关资产,并检测漏洞。也可以输入多个域名、C段IP等 开发语言:Python3 水泽下载地址 安装前置准备: 当前用户对该目录有写权…...

2023年全国职业院校技能大赛(高等职业教育组)“信息安全管理与评估”理论技能答案

理论技能与职业素养&#xff08;100分&#xff09; 2023年全国职业院校技能大赛&#xff08;高等职业教育组&#xff09; “信息安全管理与评估”理论技能 【注意事项】 1.理论测试前请仔细阅读测试系统使用说明文档&#xff0c;按提供的账号和密码登录测试系统进行测试&am…...

MATLAB 动态图GIF

MATLAB 动态图GIF 前言一、创建动态图&#xff08;动态曲线、动态曲面&#xff09;1. 创建动画曲线&#xff08;MATLAB animatedline函数&#xff09;2. 创建动画曲面 二. 保存动态图三、完整示例1. 动态曲线&#xff08; y s i n ( x ) ysin(x) ysin(x)&#xff09;2. 动态曲…...

ChatGPT⼊门到精通(4):ChatGPT 为何⽜逼

⼀、通⽤型AI 在我们原始的幻想⾥&#xff0c;AI是基于对海量数据的学习&#xff0c;锻炼出⼀个⽆所不知⽆所不能的模 型&#xff0c;并借助计算机的优势&#xff08;计算速度、并发可能&#xff09;等碾压⼈类。 但我们⽬前的AI&#xff0c;不管是AlphaGo还是图像识别算法&am…...

数据分析基础-数据可视化学习笔记03-可视化的符号与表示-图形符号学

概念 图型符号学&#xff08;Cartographic Symbolization&#xff09;是地图学领域中的一个重要概念&#xff0c;涉及到如何使用不同的符号、颜色、图案和标记来在地图上表示地理信息和数据。图型符号学旨在传达地理信息&#xff0c;使得地图能够清晰、有效地传达各种空间数据…...

暴力递归转动态规划(四)

题目 规定1对应A、2对应B、3对应C…26对应Z&#xff0c;那么一个数字字符串比如"111"&#xff0c;就可以转化为&#xff1a;“AAA”、“KA"或"AK”&#xff0c;给定一个数字字符组成的字符串str&#xff0c;返回有多少种转化结果。 解释一下&#xff0c;字…...

创业团队如何利用Taotoken统一技术栈并降低AI接入门槛

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 创业团队如何利用Taotoken统一技术栈并降低AI接入门槛 对于资源有限的创业团队而言&#xff0c;在产品中集成人工智能能力是提升竞…...

Godot 4.3中工业级3D反向运动学(IK)落地实践指南

1. 这不是“加个插件就完事”的IK方案&#xff0c;而是真正能进生产管线的3D反向运动学落地实践在Godot 4.3正式版发布后第三周&#xff0c;我接手了一个角色动画需求&#xff1a;让一个机械臂模型在VR场景中实时响应手柄位置&#xff0c;末端执行器&#xff08;夹爪&#xff0…...

HarmonyOS APP<<古今职鉴定>>开源教程第20篇:农历日期与节日计算

本篇学习农历算法&#xff0c;实现年俗内容的日期驱动图&#xff1a;农历日期与节日计算 的关键流程与实现要点。 学习目标 完成本篇后&#xff0c;你将能够&#xff1a; ✅ 理解农历算法原理✅ 实现公历转农历✅ 计算传统节日✅ 实现年俗日期匹配 预计学习时间 约 90 分钟…...

PrismLauncher-Cracked:如何通过代码修改实现Minecraft完全离线启动?

PrismLauncher-Cracked&#xff1a;如何通过代码修改实现Minecraft完全离线启动&#xff1f; 【免费下载链接】PrismLauncher-Cracked This project is a Fork of Prism Launcher, which aims to unblock the use of Offline Accounts, disabling the restriction of having a …...

对比直接使用厂商API观察通过聚合平台调用的延迟差异

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 对比直接使用厂商API观察通过聚合平台调用的延迟差异 在将大模型集成到应用时&#xff0c;开发者通常会关注API调用的响应速度。聚…...

3步解锁专业级HDR画质:MPC Video Renderer完全使用指南

3步解锁专业级HDR画质&#xff1a;MPC Video Renderer完全使用指南 【免费下载链接】VideoRenderer Внешний видео-рендерер 项目地址: https://gitcode.com/gh_mirrors/vi/VideoRenderer 还在为Windows播放HDR视频效果不佳而烦恼吗&#xff1f;MPC…...

计算机专业生打 CTF 全指南:从新手小白到赛事拿分,附实战避坑手册_ctf比赛自己带电脑吗

作为计算机专业毕业的过来人&#xff0c;我始终觉得&#xff1a;CTF 比赛是大学生把课本知识落地成硬技能的最佳载体。 刚上大二时&#xff0c;我还是个只会敲基础代码、对 网络安全停留在课本概念的小白&#xff0c;靠着 3 次参赛经历&#xff0c;不仅吃透了操作系统、计算机…...

Gophish钓鱼页面制作指南:从克隆腾讯企业邮箱到数据收集

Gophish钓鱼页面制作实战&#xff1a;从企业邮箱克隆到数据捕获全流程 在企业安全防护体系中&#xff0c;钓鱼攻击模拟演练已成为检验员工安全意识的重要手段。作为开源钓鱼框架的标杆&#xff0c;Gophish以其模块化设计和易用性&#xff0c;成为红队演练的标配工具。本文将深…...

Chrome-Charset:三步解决浏览器网页乱码问题的终极指南

Chrome-Charset&#xff1a;三步解决浏览器网页乱码问题的终极指南 【免费下载链接】Chrome-Charset An extension used to modify the page default encoding for Chromium 55 based browsers. 项目地址: https://gitcode.com/gh_mirrors/ch/Chrome-Charset 你是否曾经…...

飞机在飞行中将电力传输至地面接收器

此次演示为太空太阳能新方案奠定了基础。在2025年11月一个狂风大作的日子&#xff0c;一架塞斯纳涡轮螺旋桨飞机在5000米的高度飞越宾夕法尼亚州上空时&#xff0c;遭遇了时速高达70节&#xff08;约130公里/小时&#xff09;的侧风&#xff0c;风速几乎与这架小型飞机的飞行速…...