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

DeepSeek LeetCode 2612. 最少翻转操作数 JavaScript实现

以下是 LeetCode 2612「最少翻转操作数」的 JavaScript 实现采用 BFS 并查集路径压缩 优化时间复杂度 O(n·α(n))可处理 n ≤ 10⁵ 的数据规模。javascript/*** param {number} n* param {number} p* param {number[]} banned* param {number} k* return {number[]}*/var minReverseOperations function(n, p, banned, k) {const ans new Array(n).fill(-1);ans[p] 0; // 起点翻转次数为 0const banSet new Set(banned); // 禁止位置集合// 并查集parent[parity][i] 表示奇偶性为 parity 的位置 i 的下一个可用位置const parent [new Array(n 2), new Array(n 2)];for (let parity 0; parity 2; parity) {for (let i 0; i n 1; i) {parent[parity][i] i; // 初始指向自身}}// 查找根路径压缩const find (parity, x) {if (parent[parity][x] ! x) {parent[parity][x] find(parity, parent[parity][x]);}return parent[parity][x];};// 标记不可用的位置被禁止或起点for (let i 0; i n; i) {if (i p || banSet.has(i)) {parent[i % 2][i] i 2; // 指向下一个同奇偶的位置}}const queue [p];let head 0;while (head queue.length) {const cur queue[head];// 计算可达区间 [mn, mx]let mn Math.max(k - 1 - cur, cur - k 1);let mx Math.min(cur k - 1, 2 * n - k - cur - 1);if (mn mx) continue;const parity mn % 2; // 区间内所有位置奇偶性相同let pos find(parity, mn); // 区间内第一个可用位置while (pos mx pos n) {ans[pos] ans[cur] 1; // 更新步数queue.push(pos); // 入队继续 BFS// 将当前 pos 标记为已使用指向下一个可用位置parent[parity][pos] find(parity, pos 2);pos find(parity, pos); // 继续寻找下一个可用位置}}return ans;};核心要点1. BFS 层次遍历从起点 p 出发每次翻转操作相当于一步移动BFS 保证首次到达某位置时步数最小。2. 可达区间公式当前 1 在位置 i翻转长度为 k 的子数组后新位置 j 满足mn max(k-1-i, i-k1)mx min(ik-1, 2n-k-i-1)且 j 与 i 的奇偶性相同因为 LR 为定值。因此可达位置是 [mn, mx] 内所有与 i 同奇偶的位置。3. 并查集优化· 用 parent[0] 维护偶数下标中下一个未访问的位置parent[1] 维护奇数下标。· find 函数支持路径压缩快速跳过已访问的位置。· 每个位置只会被处理一次总操作次数 ≈ O(n·α(n))。复杂度分析· 时间复杂度O(n·α(n))其中 α 为阿克曼函数反函数近似常数。每个位置最多被查询和删除一次。· 空间复杂度O(n)用于答案数组、并查集、队列和禁止集合。
http://www.zskr.cn/news/1372848.html

相关文章:

  • Qwen模型 LeetCode 2603. 收集树中金币 Python3实现
  • 空基视觉无感定位组网 适配矿井无信号区域人员管控
  • 为什么92%的AI生成BP被秒拒?ChatGPT商业计划书写作的5大合规红线,今天不看明天就踩坑
  • 2026聚氨酯砂浆磨石地坪选购评测深度解析:聚氨酯砂浆彩砂地面、聚氨酯砂浆磨石地面、聚氨酯砂浆自流平、聚氨酯砂浆防静电地坪选择指南 - 优质品牌商家
  • 2025-2026年上海吉日搬场有限公司电话查询:预约前请确认服务范围与收费标准 - 品牌推荐
  • ChatGPT故事力跃迁指南:掌握5类高共鸣叙事结构,3天内写出用户自发转发的爆款文案
  • 2026道依茨柴油机权威服务商推荐指南:德国DEUTZ发动机/道依茨发动机配件/道依茨柴油机升级排放/VOLVO沃尔沃挖机柴油机/选择指南 - 优质品牌商家
  • 上海离婚别乱找律师!和昊云:专办抚养权财产疑难案 - 外贸老黄
  • 全球首份Gemini代码生成「生产就绪度」白皮书(含27项SRE级验收标准+自动化检测脚本开源)
  • 【DeepSeek边缘部署实战指南】:20年架构师亲授5大避坑法则与3步极简上线法
  • 2025-2026年上海吉日搬场有限公司电话查询:预约前请核实服务资质与报价 - 品牌推荐
  • 如何选25-30万家用SUV车型?2026年5月推荐TOP5对比家庭出行性价比高案例特点 - 品牌推荐
  • 量子机器学习模型面临反向工程攻击:原理、威胁与主动防御策略
  • OpenSSL CVE-2022-0778漏洞深度解析与生产级修复指南
  • 2025-2026年重卡充电桩品牌推荐:十大厂家口碑评测港口防腐蚀场景注意事项价格专业 - 品牌推荐
  • 贝叶斯网络中条件独立性的判断 CS188 Note13 学习笔记
  • 2026年第二季度,专业瑜伽理疗课程团队的选择逻辑与核心推荐 - 2026年企业推荐榜
  • QLIGHT信号灯选购推荐榜:电流探头/网络信号灯/美国pearson/英国PEM/英国Rocoil/蜂鸣器/防爆声光报警灯/选择指南 - 优质品牌商家
  • 2025-2026年儿童护眼灯品牌推荐:五大口碑产品评测学习桌防眩光注意事项市场份额 - 品牌推荐
  • 2025-2026年25-30万家用SUV车型推荐:TOP5评测长途自驾舒适安全专业市场份额 - 品牌推荐
  • 2025-2026年飞迅通达电话查询:回收服务器前需核实设备状态与价格 - 品牌推荐
  • 2026滚筒式喷砂机技术解析与合规厂家选型参考:成都,专业五金喷砂加工/专业喷砂加工厂/台车式喷砂机/喷砂加工设备/选择指南 - 优质品牌商家
  • 2025-2026年返利app品牌推荐:五大评测口碑返利平台适用场景特点与价格 - 品牌推荐
  • 2025-2026年全球美白防晒霜品牌推荐:十大口碑产品评测度假防水防汗市场份额注意事项 - 品牌推荐
  • 2026年北京高端软装设计师事务所实测评测报告:北京装修设计事务所/北京装修设计工作室/北京装修设计师/排行一览 - 优质品牌商家
  • 2025-2026年上海吉日搬场有限公司电话查询:搬家前请查证资质与协议 - 品牌推荐
  • [开源] 病历自举报系统:面向临床质控的电子病历智能预审工具,用大模型扮演质疑者角色发现逻辑矛盾与缺项问题
  • [开源] 医保飞检规则边界测试用例生成器:面向医保办与信息科的主动合规演练工具
  • [开源] 康复处方安全卫士:面向康复科与临床药学的处方前置风险拦截系统
  • [开源] 急诊分诊能力闯关训练系统:面向护士与临床教学的可视化季票式技能成长平台