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

西安的网站设计单位番禺网站开发费用

西安的网站设计单位,番禺网站开发费用,iis7.0建设网站,django wordpress给你一个按 非递减顺序 排序的整数数组 nums&#xff0c;返回 每个数字的平方 组成的新数组&#xff0c;要求也按 非递减顺序 排序。 方法一&#xff1a;直接将每个元素的平方压入ans数组中&#xff0c;再对ans数组进行排序 class Solution { public:vector<int> sort…

给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。

方法一:直接将每个元素的平方压入ans数组中,再对ans数组进行排序

class Solution 
{
public:vector<int> sortedSquares(vector<int>& nums) {vector<int>ans;for(int x:nums){ans.emplace_back(x*x);}sort(ans.begin(),ans.end());return ans;}
};

方法二:双指针

题目给我们的数组是一个非递减的数组,那么我们可以利用好这个条件减小时间复杂度。

操作方法如下:由于是非递减数组,并且其中可能有负数,那么平方后最大的两个数只有可能是第一个(即负数中最小的那个)和最后一个(即正数中最大的那个)。我们可以想到双指针,一个从前往后,一个从后往前,分别比较指向元素平方后的大小。然后给一个位置指针k,标记要存入的位置。比较后我们将较大的元素存到k这个位置,然后k自减,指向平方后较大的元素的指针就移动一位,重复上述过程

class Solution 
{
public:vector<int> sortedSquares(vector<int>& nums) {vector<int>ans(nums.size(),0);int k=nums.size()-1;int i=0,j=k;while(i<=j)//要取等,否则若有奇数个元素,中间那个会没有处理{if(nums[i]*nums[i]<nums[j]*nums[j]){ans[k--]=nums[j]*nums[j];j--;}else{ans[k--]=nums[i]*nums[i];i++;}}return ans;}
};

http://www.sczhlp.com/news/119126/

相关文章:

  • wordpress 中型网站网站建设费是什么费用
  • 马尾区建设局网站商场大型话题活动策划网站
  • 途牛旅行网站建设策划书博物馆网站建设
  • Day18面向对象的基本认识与回顾方法的定义
  • 【2025-09-19】连岳摘抄
  • 鸿鹄网站建设网页游戏传奇霸主辅助
  • 织梦 友情链接 网站名 分隔符新手如何做外贸
  • 什么网站可以做视频剪辑的兼职专业网站建设公司推荐
  • 小型企业网站建设怎么做免费网站推
  • 企业网站cms系统百度小程序入口官网
  • 制作asp手机网站国家pccm建设申报网站
  • 有人情味的网站安阳招聘网
  • 网站建设助您购选免费建网站程序
  • 专做商铺中介网站个人网站 可以做论坛吗
  • 【2025-09-18】工作情绪
  • 影视怎么建设网站wordpress虚拟3d网站
  • php公司网站系统高端网站制作网站建设
  • 网站开发人员需要去做原型吗房地产网站设计
  • Ubuntu 系统部署 LNMP 环境详细教程(附shell脚本一键部署↓) - 指南
  • 详细介绍:7HTMLCSS高级
  • 汽车网站模板下载做网站之前需要准备什么软件
  • 上高县城乡规划建设局网站销售方案怎么做
  • 手机网站域做什么广告wordpress 正计时
  • jquery网站引导插件长沙网站建设的首选
  • 警告欺骗网站模板自己做衣服的网站
  • 中英文微信网站建设页游平台网站
  • 企业网站开发目的和意义电商网站建设行情
  • 电子商务网站建设的阶段化分析中小企业公司
  • 图书馆网站建设的项目报告商品推广软文写作500字
  • MAUI和Android、IOS的互操作之IOS篇