算法每日一题笔记 —— 977.有序数组的平方

题目链接:

leetcode.cn/problems/sq...

题目描述:

解答:

两种解法均手打了一遍:

方法一:直接排序

cpp 复制代码
vector<int> sortedSquares(vector<int>& nums) {
    int size = nums.size();
    for(int i = 0; i < size; i++) {
        nums[i] = nums[i] * nums[i];
    }

    sort(nums.begin(), nums.end());

    return A;
}

方法二:双指针

cpp 复制代码
vector<int> sortedSquares(vector<int>& nums) {
    int size = nums.size();
    int i = 0;
    int j = size - 1;
    int pos = size - 1;
    vector<int> ans(size,0);
    while(i <= j) {
        if(nums[i] * nums[i] < nums[j] * nums[j]) {
            ans[pos] = nums[j] * nums[j];
            j--;
        } else {
            ans[pos] = nums[i] * nums[i];
            i++;
        }

        pos--;
    }

    return ans;
}
相关推荐
旺仔老馒头.14 分钟前
【数据结构与算法】手撕排序算法(二)
c语言·数据结构·算法·排序算法
好学且牛逼的马26 分钟前
【Hot100 | 2 LeetCode49 字母异位词分组问题】
算法
2301_7951672036 分钟前
Rust 在内存安全方面的设计方案的核心思想是“共享不可变,可变不共享”
算法·安全·rust
czhc11400756631 小时前
Java117 最长公共前缀
java·数据结构·算法
java 乐山1 小时前
蓝牙网关(备份)
linux·网络·算法
云泽8081 小时前
快速排序算法详解:hoare、挖坑法、lomuto前后指针与非递归实现
算法·排序算法
数字化脑洞实验室1 小时前
智能决策算法的核心原理是什么?
人工智能·算法·机器学习
流烟默1 小时前
机器学习中拟合、欠拟合、过拟合是什么
人工智能·算法·机器学习
Brianna Home1 小时前
现代C++:从性能泥潭到AI基石
开发语言·c++·算法
再卷也是菜1 小时前
算法基础篇(10)递归型枚举与回溯剪枝
算法·深度优先·剪枝