Day60.算法训练
912. 排序数组
-
归并排序
class Solution {public int[] sortArray(int[] nums) {int lo = 0;int hi = nums.length - 1;int[] assist = new int[nums.length];sortArray(nums, assist, lo, hi);return nums;}private void sortArray(int[] nums, int[] assist, int lo, int hi) {if (lo >= hi) {return;}int mid = lo + (hi - lo) / 2;sortArray(nums, assist, lo, mid);sortArray(nums, assist, mid + 1, hi);merge(nums, assist, lo, mid, hi);}private void merge(int[] nums, int[] assist, int lo, int mid, int hi) {int p1 = lo;int p2 = mid + 1;int i = lo;while (p1 <= mid && p2 <= hi) {if (lessCmp(nums[p1], nums[p2])) {assist[i++] = nums[p1++];} else {assist[i++] = nums[p2++];}}while (p1 <= mid) {assist[i++] = nums[p1++];}while (p2 <= hi) {assist[i++] = nums[p2++];}for (int index = lo; index <= hi; index++) {nums[index] = assist[index];}}private boolean lessCmp(Comparable a, Comparable b) {return a.compareTo(b) < 0;}
}
-
快速排序
class Solution {public int[] sortArray(int[] nums) {int lo = 0;int hi = nums.length - 1;sortArray(nums, lo, hi);return nums;}private void sortArray(int[] nums, int lo, int hi) {if (lo >= hi) {return;}int partion = partion(nums, lo, hi);sortArray(nums, lo, partion - 1);sortArray(nums, partion + 1, hi);}private int partion(int[] nums, int lo, int hi) {int k = nums[lo];int left = lo;int right = hi + 1;while (true) {while (right > 0 && gtCmp(nums[--right], k)) {if (right == lo) {break;}}while (left < hi && leCmp(nums[++left], k)) {if (left == hi) {break;}}if (left == right) {break;}exch(nums, left, right);}exch(nums, lo, right);return right;}private void exch(int[] nums, int left, int right) {int a = nums[left];nums[left] = nums[right];nums[right] = a;}private boolean leCmp(Comparable a, Comparable b) {return a.compareTo(b) < 0;}private boolean gtCmp(Comparable a, Comparable b) {return a.compareTo(b) > 0;}}
相关文章:
Day60.算法训练
912. 排序数组 归并排序 class Solution {public int[] sortArray(int[] nums) {int lo 0;int hi nums.length - 1;int[] assist new int[nums.length];sortArray(nums, assist, lo, hi);return nums;}private void sortArray(int[] nums, int[] assist, int lo, int hi) …...
深入了解Java8新特性-日期时间API之TemporalQuery、TemporalQueries
阅读建议 嗨,伙计!刷到这篇文章咱们就是有缘人,在阅读这篇文章前我有一些建议: 本篇文章大概2000多字,预计阅读时间长需要5分钟。本篇文章的实战性、理论性较强,是一篇质量分数较高的技术干货文章&#x…...
记录一次现网问题排查(分享查域名是否封禁小程序)
背景: 收到工单反馈说现网业务一个功能有异常,具体现象是tc.hb.cn域名无法访问,客户地区是河南省,这里记录下排查过程和思路。 首先梳理链路 客户端域名 tc.hb.cn cname—> domainparking-dnspod.cn(新加坡clb)—> snat—&…...
linux下实现Qt程序实现开机自启动
1.原理 要想实现开机自启动,首先,QT是没有这种实现的,最好是靠电脑开机的启动目录启动软件,下面这个目录 /etc/xdg/autostart 这是操作系统中用于配置启动项的目录,该目录下存放着开机自启动的启动器(.desktop)文件…...
TCP 基本认识
1:TCP 头格式有哪些? 序列号:用来解决网络包乱序问题。 确认应答号:用来解决丢包的问题。 2:为什么需要 TCP 协议? TCP 工作在哪一层? IP 层是「不可靠」的,它不保证网络包的交付…...
智慧城市包括哪些内容?有哪些智慧城市物联网方案?
数字城市、智慧城市的发展,离不开对公共基础设施的数字化、智慧化改造升级。通过融合边缘计算、5G、物联网、数字孪生、人工智能等新一代信息技术,助力传统公共基础设施提升增强全流程数据能力、计算能力、服务能力,从而不断丰富公共基础设施…...
Arkts@Watch装饰器与内置组件双向同步深度讲解与实战应用【鸿蒙专栏-14】
文章目录 ArkTS 状态管理深度解析:@Watch 和 $$ 运算符的妙用@Watch 装饰器:状态变量的敏感监听装饰器说明语法说明观察变化和行为表现限制条件使用场景$$ 运算符:内置组件状态的双向同步使用规则使用示例ArkTS 深度探索:@Watch 装饰器与 $$ 运算符的进阶应用进阶应用:@Wa…...
iMazing是什么软件?2024最新版本如何下载
iMazing是一款功能强大的iOS设备管理软件,它可以帮助用户备份和管理他们的iPhone、iPad或iPod Touch上的数据。除此之外,它还可以将备份数据转移到新的设备中、管理应用程序、导入和导出媒体文件等。本文将详细介绍iMazing的功能和安全性,并教…...
LeetCode(40)同构字符串【哈希表】【简单】
目录 1.题目2.答案3.提交结果截图 链接: 同构字符串 1.题目 给定两个字符串 s 和 t ,判断它们是否是同构的。 如果 s 中的字符可以按某种映射关系替换得到 t ,那么这两个字符串是同构的。 每个出现的字符都应当映射到另一个字符࿰…...
【代码随想录算法训练营-第一天】【数组】704. 二分查找、27. 移除元素
LeetCode-704.二分查找 【错误】第一遍提交的代码 主要错误点: 没弄清楚区间的定义导致:r 在定义处的赋值和 if 判断之后 r 的复制没有想清楚;没有搞清楚判断循环结束的条件;没有搞明白区间的定义,r 和 l 如何赋值&a…...
[教程] 一文进阶Redis
Redis进阶 过期时间(Expire) Redis 的过期时间(Expire)功能是一种数据生命周期管理机制,允许为键设置一个过期时间。一旦达到该时间,键会自动被删除。这对于管理缓存数据特别有用,可以自动清理…...
通用plantuml模板头
通用plantuml文件 startuml participant Admin order 0 #87CEFA // 参与者、顺序、颜色 participant Student order 1 #87CEFA participant Teacher order 2 #87CEFA participant TestPlayer order 3 #87CEFA participant Class order 4 #87CEFA participant Subject order …...
网站公安备案流程
1.公安备案网址 https://beian.mps.gov.cn/ 选择用户登录->法人用户登录 左边的码下载APP,登上去之后用APP扫右边的码,人脸识别...
关于使用若依,并不会自动分页的解决方式
关于使用若依,并不会自动分页的解决方式 如果只是单纯的使用一次查询list,并不会触发这个bug 例如: 但是我们如果对里面的数据进行调整修改的话就会触发这个bug 例如: 此时可以看到我对数据进行了转换!!!,这时如果超出数据10条,实际我们拿到的永远是10条,具体原因这里就不展…...
在PyCharm中配置PyQt5环境
在PyCharm中配置PyQt5环境 文章目录 1.安装第三方库2.PyQt5设计器3.PyUIC转换工具 🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ…...
SIFI 极值点拟合的详细推导过程
在获得高斯差分金字塔之后,我们可以根据邻近尺度和邻近像素一共 26 个像素点的灰度值和中心像素点的灰度值比较,如果中心像素点的值是最大或者最小的,则作为极值点保留下来。 但是我们知道像素是网格排布的,也就是说是离散的&…...
Kontakt v7.7.2(音频采样器)
Native Instruments Kontakt 7是一款强大的软件采样器,它允许用户从各种来源采样音频并进行编辑和处理。它包含大量预设采样库,包括乐器、合成器、鼓组和声音效果等。此外,Kontakt 7还允许用户创建自己的采样库,以便根据自己的需要…...
Drawer抽屉(antd-design组件库)简单用法
1.Drawer抽屉 屏幕边缘滑出的浮层面板。 2.何时使用 抽屉从父窗体边缘滑入,覆盖住部分父窗体内容。用户在抽屉内操作时不必离开当前任务,操作完成后,可以平滑地回到原任务。 需要一个附加的面板来控制父窗体内容,这个面板在需要时…...
Android控件全解手册 - 多语言切换完美解决方案(兼容7.0以上版本)
Unity3D特效百例案例项目实战源码Android-Unity实战问题汇总游戏脚本-辅助自动化Android控件全解手册再战Android系列Scratch编程案例软考全系列Unity3D学习专栏蓝桥系列ChatGPT和AIGC 👉关于作者 专注于Android/Unity和各种游戏开发技巧,以及各种资源分…...
Android-P CameraSerivce
0 前言 本文重点分析Android-P的CameraService实现。 验证:Goldfish模拟器 1 定义 图1.1 CameraService ICameraServiceframeworks/av/camera/aidl/android/hardware/ICameraService.aidlBnCameraServiceout/soong/.intermediates/frameworks/av/camera/libcamera_client/an…...
数字波束形成中的导向矢量与FFT方法:原理对比与场景应用
1. 数字波束形成的基本概念 数字波束形成是现代雷达和通信系统中的核心技术之一。简单来说,它就像给天线装上了"智能方向盘",能够根据需要灵活调整信号接收或发射的方向。想象一下,你在一间嘈杂的餐厅里,想要听清某个人…...
04月06日AI每日参考:Gemma4颠覆参数论 阿里OpenAI频放新动作
今日概览今日AI圈迎来技术与商业双重爆发,谷歌Gemma 4以小参数模型打破行业"参数迷信",为端侧AI普及按下加速键。阿里、OpenAI等头部玩家同步放出新动作,国产大模型与芯片的组合也传来突破性消息,全行业的技术路线和市场…...
Gemini助力Google Maps:开启智能出行新体验
Google Maps新成员Gemini:智能行程规划初体验 在Google Maps中,Gemini以“Ask Maps”的形式呈现,点击会弹出文本框。它能依据Google Maps的数据,结合用户评价来回答问题,还能从其他来源获取信息。测试中,让…...
all-MiniLM-L6-v2效果展示:22.7MB小模型在语义相似度任务中的惊艳表现
all-MiniLM-L6-v2效果展示:22.7MB小模型在语义相似度任务中的惊艳表现 在自然语言处理领域,语义相似度计算是一个基础而重要的任务,它直接影响着搜索、推荐、问答等系统的效果。传统的大模型虽然效果出色,但庞大的体积和计算需求…...
快速搭建阿里Qwen3-4B-Instruct-2507:部署步骤详解与问题排查
快速搭建阿里Qwen3-4B-Instruct-2507:部署步骤详解与问题排查 1. 模型简介与核心能力 1.1 Qwen3-4B-Instruct-2507概述 Qwen3-4B-Instruct-2507是阿里巴巴通义实验室最新推出的轻量级开源大语言模型,作为Qwen系列的重要成员,它在保持40亿参…...
Jimeng LoRA动态热切换实战:避免显存爆炸,轻松测试多训练阶段模型
Jimeng LoRA动态热切换实战:避免显存爆炸,轻松测试多训练阶段模型 1. 项目背景与核心价值 你是否遇到过这样的困扰:在测试不同训练阶段的LoRA模型时,每次切换版本都需要重新加载底座模型,不仅耗时耗力,还…...
Ollama+GPT-OSS-20B黄金组合:无需网络,随时可用的智能助手
OllamaGPT-OSS-20B黄金组合:无需网络,随时可用的智能助手 1. 为什么需要本地化AI助手 在当今AI技术快速发展的时代,云端AI服务虽然方便,但也存在诸多限制:网络依赖、隐私担忧、API费用高昂、响应延迟等问题。对于需要…...
【面板数据】A股上市公司研发投入数据(2000-2024年)
数据简介:作为评估企业创新能力与可持续发展潜力的关键维度,上市公司研发投入呈现显著的行业差异化特征,但总体保持稳健增长态势。随着信息披露监管要求的持续强化,研发投入透明度已成为提升企业市场信誉的重要抓手。值得注意的是…...
SuperDuperDB终极指南:如何用你喜爱的工具构建革命性AI代理应用
SuperDuperDB终极指南:如何用你喜爱的工具构建革命性AI代理应用 【免费下载链接】superduperdb Superduper: End-to-end framework for building custom AI applications and agents. 项目地址: https://gitcode.com/gh_mirrors/su/superduperdb SuperDuperD…...
轻松掌握gallery多渠道打包:为不同应用商店构建专属本地AI平台版本
轻松掌握gallery多渠道打包:为不同应用商店构建专属本地AI平台版本 【免费下载链接】gallery A gallery that showcases on-device ML/GenAI use cases and allows people to try and use models locally. 项目地址: https://gitcode.com/GitHub_Trending/gallery…...
