解题思路

此处撰写解题思路
这里非递减顺序排序,所以有三种情况
[0,1,2,3]全正
[-5,-4,-3]全负
[-5,0,5]由负到正
因为是平方的结果进行排序,我们观察到不论是哪种情况
最大值都在两侧所以我们可以在两侧设置指针,通过比较,如果是左边的结果大就移动左指针,反之则移动右指针
最终使指针重合
因为要取到最中间的那个值所以循环的判断条件应该包括等于

代码

class Solution {public int[] sortedSquares(int[] nums) {int length = nums.length;int left = 0;int right = length-1;int[] results = new int[length];int leftSquare;int rightSquare;while(left<=right){leftSquare = nums[left]*nums[left];rightSquare = nums[right]*nums[right];if(leftSquare<=rightSquare){results[length-1] = rightSquare;right--;}else{results[length-1]=leftSquare;left++;}length--;}return results;}
}

力扣977 双指针解决相关推荐

  1. 双指针的应用,力扣977

    力扣977,题目如下:给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按非递减顺序排序. 可以发现平方后的数组有一个特点,就是大的数肯定是在两侧,越往中间值 ...

  2. 力扣977有序数组的平方(c++版)

    977有序数组的平方(c++版) 链接: 力扣题目链接 思路 首先要理解题目里的非递减顺序是什么意思. 非递减顺序排列即是指:意思是关键字递增序排列,但是并非单调递增(因为有重复的关键字)从小到大或者 ...

  3. 代码随想录算法训练营第二天 | 力扣977.有序数组的平方,209.长度最小的子数组,59.螺旋矩阵II

    代码随想录算法训练营第二天 | 977.有序数组的平方 ,209.长度最小的子数组 ,59.螺旋矩阵II 977.有序数组的平方 题目链接:有序数组的平方 题目描述: 给你一个按 非递减顺序 排序的整 ...

  4. 力扣977,有序数组的平方(JavaScript)

    定义一个新的数组用来存储比较后的元素,定义两个指针,从数组的首尾向数组中间移动,找到值较大的数,存储到新数组中,并且该指针下移 var sortedSquares = function(nums) { ...

  5. 双指针解决力扣两/三数之和问题

    双指针解决力扣两/三数之和问题 文章目录 双指针解决力扣两/三数之和问题 一.问题描述 二.分析 1.暴力 2.排序+双指针法 3.hash法 三.问题描述 四.分析 方法一:排序 + 双指针 五.代 ...

  6. 双指针算法之快慢指针(一):力扣【判断链表是否有环】leetcode-141、142

    一.简介:什么是快慢指针? 快慢指针,顾名思义,无非就是设置一个快指针,一个慢指针,初始化的时候,快指针和慢指针都指向链表的头结点,前进的时候一个在前一个在后,结合起来可以十分巧妙的解决链表中的一些问 ...

  7. 双指针算法之快慢指针(二):力扣【寻找链表的第N个点】leetcode-876、19

    双指针算法之快慢指针(二):力扣[寻找链表的第N个点]leetcode-876.19 看完本文,可以去解决力扣的 867 题和 19 题 以往参考:双指针算法之快慢指针(一):力扣[判断链表是否有环] ...

  8. 双指针算法 | 力扣344. 反转字符串

    本文讲解力扣344. 反转字符串问题 也就是使用双指针的思想 很简单的一道题 1 题目 编写一个函数,其作用是将输入的字符串反转过来.输入字符串以字符数组 char[] 的形式给出. 不要给另外的数组 ...

  9. 力扣209-长度最小的子数组(Java,双指针解法)

    209. 长度最小的子数组 - 力扣(LeetCode) (leetcode-cn.com)https://leetcode-cn.com/problems/minimum-size-subarray ...

最新文章

  1. Bzoj1269 [AHOI2006]文本编辑器editor
  2. 先来先服务算法的特点
  3. c++ string后面会添加‘\0‘
  4. 文档预览 OfficeWebViewer:在浏览器中查看Office文档
  5. redis和php有什么,redis与jedis的区别是什么
  6. TensorFlow 教程 --教程--2.8循环神经网络
  7. java内部类简单解析
  8. python3字典列表_python3_列表、元组、集合、字典
  9. RFIC4463_F2C
  10. 在线预览打印Word文档
  11. uniapp 微信授权,微信分享,微信支付,微信跳转app集成
  12. 计算机安装win10系统还原,解决win10电脑一键还原教程
  13. 2021西湖论剑 Re wp
  14. Revit SDK 介绍:API Sketched Winder Stairs 创建扇形踏步楼梯
  15. 三维地面激光扫描行业调研报告 - 市场现状分析与发展前景预测
  16. php的usleep卡死linux,usleep() 有很大的问题
  17. LVS+Nginx实现高可用集群
  18. c 语言字体怎么改,Notepad++设置字体语言格式方法介绍
  19. 科技云报道:云原生安全,腾讯产业互联网的底色
  20. 记录 coda装pytorch并不需要单独装cuda和cudnn|李沐评论

热门文章

  1. 瑞萨单片机C语言,瑞萨单片机学习笔记(1)基本配置
  2. linux ioctl网络参数设置,Linux 网络编程之ioctl函数
  3. 论android等平台回音消除解决方案
  4. matlab 龙格现象,利用MATLAB分析数值积分中的龙格(Runge)现象(1)
  5. Android 虚拟键盘相关功能大全
  6. Ubuntu环境中英文切换
  7. C++ primer 第五版 练习题记录
  8. CES 2011—少数派报告
  9. TI DSP TMS320F28335 CCS初级踩坑
  10. koa--更富有表现力、更健壮的 Web 框架