有序数组的平方

暴力排序

每个数平方以后排个序

cpp 复制代码
class Solution {
public:
    vector<int> sortedSquares(vector<int>& nums) {
        int slow=0,fast=0;
        int n=nums.size();
        while(fast<n)
        {
            nums[slow]=nums[fast]*nums[fast];
            fast++;
            slow++;
        }
        sort(nums.begin(),nums.end());
        return nums;
    }
};
cpp 复制代码
class Solution {
public:
    vector<int> sortedSquares(vector<int>& nums) {
        for(int i=0;i<nums.size();i++)
        {
            nums[i]*=nums[i];
        }
        sort(nums.begin(),nums.end());
        return nums;
    }
};

双指针

cpp 复制代码
class Solution {
public:
    vector<int> sortedSquares(vector<int>& nums) {
        int n=nums.size()-1;
        vector<int>result(nums.size(),0);
        for(int i=0,j=nums.size()-1;i<=j;)
        {
            if(nums[i]*nums[i]<nums[j]*nums[j])
            {
                result[n]=nums[j]*nums[j];
                n--;
                j--;                
            }
            else
            {
                result[n]=nums[i]*nums[i];
                n--;
                i++;
            }            
        }
    return result;
    }
};

定义与初始化的使用

1.函数内部需要存储一些数据时。

2.算法实现中构建数据结构。

3.从外部数据源读取数据时。

4.作为函数参数传递数据结构时

**vector<int>result(nums.size,0):**将nums.size()中的所有元素初始化为0。

相关推荐
牧羊人.33338 分钟前
卷积神经网络之VGG
人工智能·深度学习·神经网络·算法·cnn
小郎君6581 小时前
Vue 多标签页的加载态设计:为什么我没有用 Suspense 实现 PageLoading
vue.js·算法
JJJennie7772 小时前
MAI Gateway私有化部署全攻略:大模型网关如何接入?附架构图
算法·gateway·ai网关·魔芋ai
東隅已逝,桑榆非晚2 小时前
算法3.双指针法-快乐数
c++·笔记·学习·算法
专注仿真2 小时前
卷积神经网络(CNN)算法详解
人工智能·python·算法·代码·大模型训练
FII工业富联科技服务2 小时前
多智能体如何进入制造现场?从业务协同到数字孪生验证
大数据·人工智能·算法·机器人·制造·数字孪生
≮傷£≯√2 小时前
httpserver_QNetWorkClient
算法
Evand J2 小时前
【PMSM例程11】永磁同步电机(PMSM)基于UKF的转速与转子位置估计。附下载链接
算法·matlab·卡尔曼滤波·永磁同步电机·ukf·pmsm·位置估计
货拉拉技术2 小时前
记忆即智能:重构对话式AI Agent认知基座的四层渐进式记忆与自进化系统
人工智能·算法
杜 硕2 小时前
从零开始的C++生活——第六讲——02
c++·算法·生活