【每日一题】768. 最多能完成排序的块 II

768. 最多能完成排序的块 II

参考k神题解就行,写的很详细:
https://leetcode.cn/problems/max-chunks-to-make-sorted-ii/solution/zui-duo-neng-wan-cheng-pai-xu-de-kuai-ii-deng-jie-/

辅助栈

排序块定义:

  • 排序块 充分条件: 设此块中最大数字为 head , 若此块后面的所有数字都 >= head ,则此块为排序块。
  • 排序块 最短长度为 1,即单个元素可以独立看作一个排序块。

注意栈中存储的是一个块中的最大值,遍历到下一个元素时,如果这个元素比栈顶之下的元素小,那么,栈顶之下的元素应该加入到栈顶元素所在的块中,所以,这里弹出的时候要注意,比较的是栈顶之下的元素与当前遍历到的元素。

请看代码中的示例,最后栈中有几个元素就代表有几个块:

class Solution {
   
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值