Java算法模板

合并区间

统计不同区间的元素个数

java 复制代码
         //合并区间
        List<Integer> result = new ArrayList<>();
        int start = intervals.get(0)[0];
        int end   = intervals.get(0)[1];

        for(int i=1;i<intervals.size();i++){
            int[] curr = intervals.get(i);
            if(curr[0]>end){
                //不能合并,存放结果
                result.add(end-start+1);
                start = curr[0];
                end = curr[1];

            }else{
                end = Math.max(end,curr[1]);
            }
        }
        // 添加最后一个字段
        result.add(end-start+1);

统计每个字母出现的最后下表

java 复制代码
int[] last = new int[26]; // 记录每个字母最后出现的下标
for (int i = 0; i < n; i++) {
    last[s[i] - 'a'] = i;
}

贪心算法

贪心算法 是一种 在每一步都选择当前最优解(局部最优解) ,从而 期望最终能得到全局最优解 的算法策略。

列表 List

nums.add(List.of(1)); 可以用,但元素不可修改

nums.add(new ArrayList<>(List.of(1))); 推荐用于可变列表

相关推荐
RainbowSea2 小时前
12. LangChain4j + 向量数据库操作详细说明
java·langchain·ai编程
RainbowSea2 小时前
11. LangChain4j + Tools(Function Calling)的使用详细说明
java·langchain·ai编程
考虑考虑6 小时前
Jpa使用union all
java·spring boot·后端
用户3721574261357 小时前
Java 实现 Excel 与 TXT 文本高效互转
java
浮游本尊8 小时前
Java学习第22天 - 云原生与容器化
java
聚客AI9 小时前
🙋‍♀️Transformer训练与推理全流程:从输入处理到输出生成
人工智能·算法·llm
渣哥10 小时前
原来 Java 里线程安全集合有这么多种
java
间彧10 小时前
Spring Boot集成Spring Security完整指南
java
间彧10 小时前
Spring Secutiy基本原理及工作流程
java
Java水解11 小时前
JAVA经典面试题附答案(持续更新版)
java·后端·面试