代码随想录算法训练营第三十五天|435. 无重叠区间、763.划分字母区间

435. 无重叠区间

先对区间进行排序,优先去除交集区间。

763.划分字母区间

这题的思路就是找到每个区间中的字母最后出现的位置,关键是位置怎么找

cpp 复制代码
int hash[27] = {0}; // i为字符,hash[i]为字符出现的最后位置
        for (int i = 0; i < S.size(); i++) { // 统计每一个字符最后出现的位置
            hash[S[i] - 'a'] = i;
        }

这里的方法是十分巧妙的,由于i是从小到大依次循环,指定字母的值小的会被大的值给覆盖,最后仅用一次循环就实现了最后位置的寻找。

相关推荐
Logic1012 小时前
C语言/数据结构二维数组题解:找出行列O个数均为偶数的格子——奇偶性预处理+二次遍历
c语言·数据结构·算法·二维数组·时间复杂度·动态内存分配·奇偶性
程序猿阿森2 小时前
【机器学习实战】朴素贝叶斯算法详解:从概率基础到商品评论情感分析
算法·机器学习·概率论
余额瞒着我当琳2 小时前
哈希表底层原理解析,直接定址法,哈希冲突,负载因子,哈希函数,开放定址法
java·c++·哈希算法·散列表
xxwl5853 小时前
区域赛算法模版第五章---数学与数论
c++·笔记·算法
看浪的路人3 小时前
第6讲:Agent 安全体系——Prompt 注入防御、工具调用审计与输出合规
人工智能·算法
局部有解3 小时前
LeetCode Hot100 438 找到字符串中所有字母异位词
c++·算法·leetcode
垆边人似月.3 小时前
移动长度 k 子串使字符串变成回文
数据结构·算法
pride.li3 小时前
第12章 Python 教程-流程控制:循环结构
linux·服务器·python·算法
海绵宝宝转agent4 小时前
2026-10-16 4算法+1面经
算法
小poop4 小时前
基础排序算法详解——插入、选择与交换排序
算法·排序算法