Plantre Plantre
首页
  • 算法

    • 查找
    • 排序
  • 力扣

    • 排序
技术
硬件
逆向
  • 前端文章

    • HTML
    • CSS
    • JavaScript
  • 技术

    • 技术文档
    • GitHub技巧
    • Nodejs
    • 博客搭建
  • 学习笔记

    • 《JavaScript教程》
    • 《JavaScript高级程序设计》
    • 《ES6 教程》
    • 《Vue》
    • 《React》
    • 《TypeScript 从零实现 axios》
    • 《Git》
    • TypeScript
    • JS设计模式总结
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

plantre

一个后端开发者
首页
  • 算法

    • 查找
    • 排序
  • 力扣

    • 排序
技术
硬件
逆向
  • 前端文章

    • HTML
    • CSS
    • JavaScript
  • 技术

    • 技术文档
    • GitHub技巧
    • Nodejs
    • 博客搭建
  • 学习笔记

    • 《JavaScript教程》
    • 《JavaScript高级程序设计》
    • 《ES6 教程》
    • 《Vue》
    • 《React》
    • 《TypeScript 从零实现 axios》
    • 《Git》
    • TypeScript
    • JS设计模式总结
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 计算机组成原理

  • 操作系统

  • 计算机网络

  • 设计模式

  • Java

  • Spring

  • SpringCloud

  • MySQL

  • Redis

  • 分布式

  • Zookeeper

  • Dubbo

  • Kafka

  • 数据结构

  • 算法

  • OJ

    • 自定义
    • 排序
    • 位运算
    • 二分查找
    • 递归
    • 双指针(逆向,快慢)
    • 滑动窗口
    • 辅助栈
    • 贪心
      • 回溯
      • 动态规划
      • 二叉树
      • DFS
      • 拼接&拆分
      • 模拟
      • 工业实现原理
      • 数学
      • 字符串
    • 从道家哲学看计算机?
    • 后端
    • OJ
    plantre
    2025-06-11
    目录

    贪心

    # 860. 柠檬水找零 - 力扣(LeetCode) (opens new window)

    class Solution {
        public boolean lemonadeChange(int[] bills) {
            int crash_5 = 0;
            int crash_10 = 0;
            for(int i = 0; i < bills.length; i++){
                if (bills[i] == 5){
                    crash_5++;
                } else if (bills[i] == 10){
                    crash_5--;
                    crash_10++;
                } else if (bills[i] == 20){
                    if(crash_10 > 0){
                        crash_10--;
                        crash_5--;
                    } else {
                        crash_5 -= 3;
                    }
                }
                if (crash_5 < 0 || crash_10 < 0) return false;       
             }
             return true;
        }
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23

    # 56. 合并区间 - 力扣(LeetCode) (opens new window)

    class Solution {
        public int[][] merge(int[][] intervals) {
            if (intervals.length == 0) return new int[0][2];
            Arrays.sort(intervals, (a, b) -> a[0] - b[0]);
            List<int[]> merged = new ArrayList<>();
            merged.add(intervals[0]);
            for (int i = 1; i < intervals.length; i++) {
                int[] last = merged.get(merged.size() - 1);
                if (intervals[i][0] > last[1]) {
                    merged.add(intervals[i]);
                } else {
                    last[1] = Math.max(intervals[i][1], last[1]);
                }
            }
            return merged.toArray(new int[merged.size()][]);
        }
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17

    # 179. 最大数 - 力扣(LeetCode) (opens new window)

    class Solution {
        public String largestNumber(int[] nums) {
            String[] strs = new String[nums.length];
            for (int i = 0; i < nums.length; i++) {
                strs[i] = String.valueOf(nums[i]);
            }
            // a+b 与 b+a 的字典序比较​​ 定义排序规则,是贪心思想的典型应用
            Arrays.sort(strs, (a, b) -> (b + a).compareTo(a + b));
            // 如 "00" 需转为 "0"
            if (strs[0].equals("0")) return "0";
            return String.join("", strs);
        }
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    编辑 (opens new window)
    上次更新: 2025/07/25, 12:08:10
    辅助栈
    回溯

    ← 辅助栈 回溯→

    最近更新
    01
    加油鸭
    07-30
    02
    要点总结
    07-28
    03
    字符串
    07-15
    更多文章>
    Theme by Vdoing | Copyright © 2025-2025 plantre | MIT License
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式