代码随想录(day3)有序数组的平方

暴力求解法:

注意:需要确定范围,比如nums.sort()是在for循环之外,根据函数的功能来确定

return返回的是nums,而不是numsi因为返回的是整个数组

python 复制代码
class Solution(object):
    def sortedSquares(self, nums):
        for i in range (len(nums)):
            nums[i]=nums[i]*nums[i]
        nums.sort()
        return nums

python中切片的语法规则

python 复制代码
#list[起始索引:结束索引]切片时包含起始索引位置的元素,但不包含结束索引位置的元素
# 索引为 0表示第一个,1表示第二个,-1表示最后一个,-2表示倒数第二个

# list[-1]:返回最后一个数据
# list[:1]:返回0到1的数据,故返回第一个数据
# list[1:]:返回从1到0的数据,故返回第二个到最后一个的数据(不包含结束索引位置0)
# list[-1:]:返回从-1到0的数据,故返回最后一个数据
# list[:-1]:返回从0到-1的数据,故返回第一个到倒数第二个的数据(不包含结束索引位置-1)
# list[::1]:表示步长为1,步长大于0时,返回序列为原顺序;。
# list[::-1]: 表示从右往左以步长为1进行切片。步长小于0时,返回序列为倒序
# list[::2]: 表示从左往右步长为2进行切片

list = [1, 2, 3, 4, 5]
print(list[-1])  # 5
print(list[:1])  # [1]
print(list[1:])  # [2, 3, 4, 5]
print(list[-1:])  # [5]
print(list[:-1])  # [1, 2, 3, 4]
print(list[::1])  # [1, 2, 3, 4, 5]
print(list[::-1])  # [5, 4, 3, 2, 1]
print(list[::2])  # [1, 3, 5]

双指针+反转列表法:

注意:创建空列表的语法格式,以及abs表示绝对值;写完之后可以带入数组挨着挨着验证

python 复制代码
class Solution():
    def sortedSquares(self,nums):
        left=0
        right=len(nums)-1
        new_list=[]
        while left<=right:
            if abs(nums[left])<=abs(nums[right]):
                new_list.append(nums[right]**2)
                right-=1
            else:
                new_list.append(nums[left]**2)
                left+=1
        return new_list[::-1]
相关推荐
VALENIAN瓦伦尼安教学设备13 分钟前
ASHOOTER激光对中仪如何通过颜色确定调整是否合适
数据库·嵌入式硬件·算法
货拉拉技术13 分钟前
重塑 Agent 度量衡:基于 LLM-as-a-Judge 的离线评估体系与实践
算法·设计模式
车压27 分钟前
从“为什么”理解注意力机制
算法
wabs66640 分钟前
关于哈希表【力扣15.三数之和的思考】
数据结构·算法·leetcode·散列表·哈希表·三数之和
退休倒计时1 小时前
【每日一题】LeetCode 88. 合并两个有序数组 TypeScript
算法·leetcode·职场和发展·typescript
键盘会跳舞1 小时前
C++:函数对象与 std::function 源码级深度拆解——泛型算法的策略内核与可调用对象统一封装
c++·算法·仿函数
手写码匠1 小时前
华为云Flexus+DeepSeek征文|Agent 评测体系实战:用 DeepSeek-R1 当裁判,打造 Dify Agent 的自动化回归测试流水线
人工智能·深度学习·算法·aigc
LONGZETECH1 小时前
无人机实训高成本痛点解法:虚拟仿真实现 70% 耗材损耗下降
大数据·算法·unity·架构·无人机
不会就选b1 小时前
算法日常・每日刷题--<队列,宽搜>4
算法
码字的特恩1 小时前
微软确认暂不为 Windows 11 加入透明效果自定义功能,建议用户使用第三方工具
人工智能·windows·算法·microsoft·计算机·大模型·编程