九度网站建设长沙有哪些网站建设公司好

张小明 2026/1/10 15:46:35
九度网站建设,长沙有哪些网站建设公司好,六安网站建设 220,蔡甸做网站41. 缺失的第一个正数 困难 给你一个未排序的整数数组 nums #xff0c;请你找出其中没有出现的最小的正整数。 请你实现时间复杂度为 O(n) 并且只使用常数级别额外空间的解决方案。 示例 1#xff1a; 输入#xff1a;nums [1,2,0] 输出#xff1a;3 解释#xff1a…41. 缺失的第一个正数困难给你一个未排序的整数数组nums请你找出其中没有出现的最小的正整数。请你实现时间复杂度为O(n)并且只使用常数级别额外空间的解决方案。示例 1输入nums [1,2,0] 输出3 解释范围 [1,2] 中的数字都在数组中。示例 2输入nums [3,4,-1,1] 输出2 解释1 在数组中但 2 没有。示例 3输入nums [7,8,9,11,12] 输出1 解释最小的正数 1 没有出现。提示1 nums.length 105-231 nums[i] 231 - 1 核心笔记缺失的第一个正数 (原地哈希)1. 核心思想 (一句话总结)“一个萝卜一个坑”。利用数组下标作为哈希表的 Key。我们要把数值 x 强行交换到下标 x-1 的位置上例如数值 1 放下标 0数值 3 放下标 2。 直观理解想象你在整理杂乱的带有编号的球1号球、5号球...。规则是拿到 k号球就把它扔到 第 k-1 个 盒子里。最后从头检查盒子第一个“球号不对应”的盒子就是缺少的那个球。2. 算法流程 (归位 - 查岗)归位 (Swapping)遍历数组只要当前数字nums[i]是个“正经数”在1到n之间并且它没在正确的位置上就把它交换到正确的位置去。注意交换回来的新数字可能还需要继续交换所以用while。查岗 (Checking)再次遍历数组看哪个下标i里的数字不是i1。兜底如果全都对上了说明缺的是n1。 代码回忆清单 (关键点注释)// 题目LC 41. 缺失的第一个正数 class Solution { public int firstMissingPositive(int[] nums) { int n nums.length; for (int i 0; i n; i) { // 关键点1While循环 (不是 if) // 只要拿到的数字符合要求且没归位就一直换直到换无可换 while (nums[i] 1 nums[i] n nums[i] ! nums[nums[i] - 1]) { // 防死循环如果目标位置已经是正确的数字就别换了 // 关键点2交换逻辑 (把 x 放到 x-1 处) swap(nums, i, nums[i] - 1); } } // 关键点3寻找第一个不匹配的 for (int i 0; i n; i) { if (nums[i] ! i 1) { return i 1; // 找到了缺的就是 i1 } } return n 1; // 既然 1~n 都在那缺的就是 n1 } private void swap(int[] nums, int i, int j) { int temp nums[i]; nums[i] nums[j]; nums[j] temp; } }⚡ 快速复习 CheckList (易错点)[ ]为什么用while这是最容易错的地方。交换过来的新数字nums[i]可能还是错的例如把5换走了换回来个33也得去它该去的地方所以要一直换直到当前位置无法再处理为止。[ ]循环终止条件数字越界 (0或n)没地方放不管它。目标位置已经对了 (nums[i] nums[target])避免死循环比如两个位置都是5无限互换。[ ]时间复杂度虽然是双重循环但每个数字最多被交换一次归位。整体是 O(N)。️ 场景模拟数组[3, 4, -1, 1]i0 (Val3):3 应该去下标 2。交换-[-1, 4, 3, 1]i0 (Val-1):-1 没地方去跳过。i1 (Val4):4 应该去下标 3。交换-[-1, 1, 3, 4]i1 (Val1):1 应该去下标 0。交换-[1, -1, 3, 4]i1 (Val-1):-1 跳过。...最后检查下标 1 的值是 -1 (应该是 2)。返回 2。
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

网站开发设计的难点兰溪网站

AI Agent(智能体)正在成为提升效率、自动化复杂任务的核心驱动力。它不再仅仅是一个简单的模型,而是一个能够感知环境、做出决策并采取行动的完整系统。那么,如何从零开始构建一个高效、可靠的AI Agent呢?根据专业的构…

张小明 2026/1/7 22:59:47 网站建设

模板网站视频手机网站绑定域名是什么

Linux系统的账户与文件管理全解析 1. Linux系统接口概述 Linux系统为用户提供了两种基本的操作接口:图形用户界面(GUI)和命令行界面(CLI)。本文重点介绍CLI的使用,涵盖命令输入、输入输出重定向、后台运行命令、获取命令帮助以及终端窗口配置等内容,同时会详细介绍一些…

张小明 2026/1/7 22:59:45 网站建设

做网站的上海公司有哪些个人短信接口wordpress

利用内存取证检测高级恶意软件 1. 列出内核模块 在内存取证中,检测恶意软件时常常需要列出内核模块。以下是几种常用的方法: 使用 volatility 工具的 modules 和 modscan 插件 可以使用以下命令查找特定的内核模块,例如查找 2b9fb.sys : $ python vol.py -f …

张小明 2026/1/7 22:59:46 网站建设

.net网站开发优点在中国做国外网站

从 NV Apex 到 Apex for Ascend:混合精度训练在昇腾平台的适配与编译全流程解析一、背景:从 NV Apex 到 Ascend 适配 在 PyTorch 生态中,NVIDIA Apex 一直是混合精度训练(Automatic Mixed Precision, AMP)的核心工具。…

张小明 2026/1/7 22:59:50 网站建设

沧州做网站最好的公司网站建设的市场情况

高并发时代的测试挑战 在数字化浪潮席卷全球的今天,百万级并发系统已成为电商、金融、社交等领域的标配。2025年,随着AI和物联网设备的普及,用户对系统实时性和稳定性的期望值持续攀升。作为软件测试从业者,我们不仅要确保功能无…

张小明 2026/1/7 22:59:47 网站建设

深圳做网站500元iis部署网站无法访问

我喜欢测试。比如每天下班,就把程序跑起来,第二天来检查一下运行情况,比如是不是活着,内存消耗,流畅度变化。前几天加上防抖之后,早上一看崩溃。看了一下coredump,什么信息也没有;再…

张小明 2026/1/7 22:59:48 网站建设