LEETCODE-DAY31


title: LEETCODE-DAY31

date: 2024-03-22 19:50:30
tags:

今日内容:贪心算法455.分发饼干、376. 摆动序列、53. 最大子序和

T1

python 复制代码
class Solution:
    def findContentChildren(self, g: List[int], s: List[int]) -> int:
        g.sort()
        s.sort()
        count=0
        i=len(g)-1
        j=len(s)-1
        while j>=0:
            while i>=0:
                if s[j]>=g[i]:
                    count+=1
                    break
                i-=1
            j-=1
        return count

g =

1,2

s =

1,2,3

输出

3

预期结果

2

break后的i-=1没执行

python 复制代码
class Solution:
    def findContentChildren(self, g: List[int], s: List[int]) -> int:
        g.sort()
        s.sort()
        count=0
        i=len(g)-1
        j=len(s)-1
        while j>=0:
            while i>=0:
                if s[j]>=g[i]:
                    count+=1
                    i-=1
                    break
                i-=1
            j-=1
        return count

AC

python 复制代码

T2

python 复制代码
class Solution:
    def wiggleMaxLength(self, nums: List[int]) -> int:
        if len(nums) <= 1:
            return len(nums)  # 如果数组长度为0或1,则返回数组长度
        preDiff,curDiff ,result  = 0,0,1  #题目里nums长度大于等于1,当长度为1时,其实到不了for循环里去,所以不用考虑nums长度
        for i in range(len(nums) - 1):
            curDiff = nums[i + 1] - nums[i]
            if curDiff * preDiff <= 0 and curDiff !=0:  #差值为0时,不算摆动
                result += 1
                preDiff = curDiff  #如果当前差值和上一个差值为一正一负时,才需要用当前差值替代上一个差值
        return result

T3

python 复制代码
class Solution:
    def maxSubArray(self, nums):
        result = float('-inf')  # 初始化结果为负无穷大
        count = 0
        for i in range(len(nums)):
            count += nums[i]
            if count > result:  # 取区间累计的最大值(相当于不断确定最大子序终止位置)
                result = count
            if count <= 0:  # 相当于重置最大子序起始位置,因为遇到负数一定是拉低总和
                count = 0
        return result
相关推荐
lsylalalala15 分钟前
常见的排序算法1
数据结构·算法·排序算法
想吃火锅10051 小时前
【leetcode】54. 螺旋矩阵
算法·leetcode·矩阵
想吃火锅10051 小时前
【leetcode】300. 最长递增子序列
算法·leetcode·职场和发展
imaol11 小时前
数据结构---队列
java·数据结构·算法
数模竞赛Paid answer1 小时前
2026年电工杯数学建模A题绿电直连型电氢氨园区优化运行求解全过程论文及程序
算法·数学建模·电工杯
疯狂打码的少年1 小时前
【数据结构】串的模式匹配:KMP算法(重点)
数据结构·笔记·算法
晚风醉蝶2 小时前
第零篇-算法全景图
算法
疯狂打码的少年3 小时前
【数据结构】树的基本概念与二叉树定义
java·数据结构·笔记·算法
webmote333 小时前
用 NVIDIA Nemotron 3 Super + .NET 构建有记忆的多轮对话
后端·算法
Keven_113 小时前
算法札记:区分稀疏图与稠密图在经验上的数学计算差异
算法·稠密图·稀疏图