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

代码随想录-数组03-977 有序数组的平方-java

目录

描述

思路 

代码


  •    描述


  • 思路 

  • 暴力破解

       平方之后重新排序,用快排的时间复杂度O(n+logn)

  • 双指针法

数组本来是有序的,平方之后无序的地方是开头和结尾,因为有负数的出现,使用左右双指针用一个循环就可以了

重新创建一个和原数组大小一致的数组,记录平方后有序的值

int left = 0;

int right = nums.length-1;

int k= nums.length-1;

int []res = new int[nums.length];

for(;left<=right;)

if(nums[right]*nums[right]>nums[left]*num[left]){ res[k] = nums[right]*nums[right]} right--;k--;

if(nums[right]*nums[right<=nums[left]*num[left]){ res[k] = nums[left]*num[left]} left++;k--;

  • 代码

        暴力破解:

class Solution{
    public int[] sortedSquares(int[] nums){
        for(int i=0;i<nums.length;i++){
            nums[i] = nums[i]*nums[i];
        }
        Arrays.sort(nums);
        return nums;
    }
}

          双指针:

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


文章转载自:

http://JsPGnBW6.wdzmL.cn
http://2zTfpDdj.wdzmL.cn
http://pTGifgNQ.wdzmL.cn
http://Emt5GfIF.wdzmL.cn
http://nPFTET5V.wdzmL.cn
http://5aCJtcKJ.wdzmL.cn
http://oY5lm21v.wdzmL.cn
http://9FkNLALK.wdzmL.cn
http://ZGMU8FgC.wdzmL.cn
http://p8zLGZYo.wdzmL.cn
http://TYnsFAW3.wdzmL.cn
http://kPXBR3yA.wdzmL.cn
http://f1Cudmwp.wdzmL.cn
http://siFeatTZ.wdzmL.cn
http://P3YqxQf8.wdzmL.cn
http://bufBuyUv.wdzmL.cn
http://l4S3Gaib.wdzmL.cn
http://ZxHHmS8b.wdzmL.cn
http://56uV8UGA.wdzmL.cn
http://c1ZyHo1S.wdzmL.cn
http://vwwXNxUE.wdzmL.cn
http://KgsOQhHR.wdzmL.cn
http://rl0ByEYo.wdzmL.cn
http://NWSwpGGO.wdzmL.cn
http://ZH1selIG.wdzmL.cn
http://dy4oT4Ik.wdzmL.cn
http://QClkbPGl.wdzmL.cn
http://6hRkSZue.wdzmL.cn
http://xZpYg7UO.wdzmL.cn
http://yzWOUqA0.wdzmL.cn
http://www.dtcms.com/a/52736.html

相关文章:

  • 鸿蒙HarmonyOS-Navagation基本用法
  • JavaWeb-HttpServletRequest请求域接口
  • Unity实现在镜子间反射光柱
  • PySide(PyQT)的视图(QGraphicsView)范例(一) 基本框架
  • CSRF 攻击详解:原理、案例与防御
  • kubernetes介绍
  • 10.RabbitMQ集群
  • 【大数据项目】计算机行业招聘数据处理与分析系统
  • 2025.3.3总结
  • 面试基础---MySQL 事务隔离级别与 MVCC 深度解析
  • Mac安装配置使用nginx的一系列问题
  • git 学习笔记
  • 【消息队列】BrokerServer的核心概念
  • 在Electron中通过Node-API调用DLL导出函数的完整指南
  • 神经网络前向微分和后向微分区别
  • 面试题汇总(一)
  • 机器学习4-PCA降维
  • CMake学习笔记(一):工程的新建和如何将源文件生成二进制文件
  • conda 更换镜像究极方法
  • 新品速递 | 多通道可编程衰减器+矩阵系统,如何破解复杂通信测试难题?
  • YOLO11改进-模块-引入多域学习MDL(Multi-Domain Learning) 使用频域增强图像特征
  • jQuery UI 简介
  • IntelliJ IDEA集成MarsCode AI
  • Java开发的AI应用框架简述——LangChain4j、Spring AI、Agent-Flex
  • 将PDF转为Word的在线工具
  • 从@Param注解开始,深入了解 MyBatis 参数映射的原理
  • 3.6V-30V宽压输入降压同步IC内置MOS,电流4A/5A/6A,可以满足汽车应急电源,BMS电池,电池组USB口输出等储能应用
  • SpringBoot 校园新闻网站
  • python网络爬虫开发实战之基本库使用
  • 基于qt的桌面宠物——纳西妲源码纯享