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

977. 有序数组的平方 双指针

977. 有序数组的平方

相向双指针

思路
nums数组非递减,平方后最大值一定在待排序区间的最两端(最左端 left 或最右端 right),每次循环取最大值添加到res数组中,
更新对应的边界缩小区间,重复上述过程直至 left > right。

class Solution {public int[] sortedSquares(int[] nums) {int k = nums.length;int left = 0;int right = k - 1;int[] res = new int[k];// 对每个元素做平方运算for (int i = 0; i < k; i++) {nums[i] = nums[i] * nums[i];}// 最大值不是在待处理区间最左端,就是在最右端while (left <= right) {if (nums[left] < nums[right] ) {res[--k] = nums[right];right--;} else {res[--k] = nums[left];left++;}}return res;}
}
http://www.jsqmd.com/news/12385/

相关文章:

  • 完整教程:iSCSI服务器
  • 深入解析:数据库视图:虚拟表的强大应用
  • 非常好的学习方式是哪样
  • agc001_c题解
  • 【Trie】 UVA1401 Remember the Word - 教程
  • 【IMU】6轴数据校准算法
  • 2025 年 MES 服务商 TOP 平台机构推荐排行榜,mes 系统 /mes 软件 /mes 制造执行系统 /mes 生产制造执行系统 /mes 生产管理系统公司推荐
  • 2025 年10月 WMS 服务商最新推荐榜单,wms系统 wms软件,wms仓库管理软件,wms仓库管理系统软件公司推荐
  • 【仿生机器人】核心采购清单 (仿生机器人头方案)
  • CF数据结构题做题记录-1
  • 完整教程:安宝特产品丨FME Realize:重构数据与现实的边界,让空间计算赋能现场决策
  • 尝试对音频功率放大器芯片的噪声基底特性进行测量与计算:以纳芯威NS4268为例
  • 常见问题解决 --- wireshark安装失败
  • Node.js 性能优化:实用技巧与实战指南 - 教程
  • perl语言中的三目运算符和do代码块
  • ll
  • CCPC2023女生专场 游记(VP)
  • tp3.2不再生成Runtime/Logs日志
  • 2.5 分布式学习(Distributed Learning)
  • 心得:刷算法的痛点-只根据题目的case思考,不考虑边界情况,写出一坨shit
  • 11-Redis 集合类型深度指南:从去重特性到集合运算场景落地 - 详解
  • OI 数论 1
  • 2.4 DQN 变体(Rainbow)
  • Linux存储媒介devmount
  • 单片机--概述 - 指南
  • Emacs折腾日记(三十二)——org mode的基本美化
  • pp
  • 2025 工业风机十大品牌全景解析报告:覆盖离心风机,防爆风机,矿用风机的最新推荐
  • 详细介绍:P3.7计算机视觉
  • 2.3 深度 Q 网络(Deep Q-Network, DQN)