2588.统计美丽子数组数目:前缀和 + 位运算(异或) + 哈希表 【LetMeFly】2588.统计美丽子数组数目:前缀和 + 位运算(异或) + 哈希表力扣题目链接:https://leetcode.cn/problems/count-the-number-of-beautiful-subarrays/ 给你一个下标从 0 开始的整数数组nums 。每次操作中,你可以: 选择两个满足 0 <= i, j < nu 2025-03-06 题解 > LeetCode #题解 #中等 #数组 #LeetCode #哈希 #位运算 #哈希表 #map #前缀和
283.移动零:三种小方法实现 【LetMeFly】283.移动零:三种小方法实现力扣题目链接:https://leetcode.cn/problems/move-zeroes/ 给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。 请注意 ,必须在不复制数组的情况下原地对数组进行操作。 示例 1: 输入: nums = [0,1,0,3,12] 输出: 2025-03-05 题解 > LeetCode #题解 #简单 #双指针 #数组 #LeetCode
1328.破坏回文串:贪心 【LetMeFly】1328.破坏回文串:贪心力扣题目链接:https://leetcode.cn/problems/break-a-palindrome/ 给你一个由小写英文字母组成的回文字符串 palindrome ,请你将其中 一个 字符用任意小写英文字母替换,使得结果字符串的 字典序最小 ,且 不是 回文串。 请你返回结果字符串。如果无法做到,则返 2025-03-05 题解 > LeetCode #题解 #中等 #字符串 #贪心 #LeetCode #回文 #回文串
1745.分割回文串 IV:动态规划(用III或II能直接秒) 【LetMeFly】1745.分割回文串 IV:动态规划(用III或II能直接秒)力扣题目链接:https://leetcode.cn/problems/palindrome-partitioning-iv/ 给你一个字符串 s ,如果可以将它分割成三个 非空 回文子字符串,那么返回 true ,否则返回 false 。 当一个字符串正着读和反着读是一模一样的,就称其为 回文字符串 。 2025-03-04 题解 > LeetCode #题解 #字符串 #动态规划 #LeetCode #回文 #困难 #DP #回文串
1278.分割回文串 III:动态规划 【LetMeFly】1278.分割回文串 III:动态规划力扣题目链接:https://leetcode.cn/problems/palindrome-partitioning-iii/ 给你一个由小写字母组成的字符串 s,和一个整数 k。 请你按下面的要求分割字符串: 首先,你可以将 s 中的部分字符修改为其他的小写英文字母。 接着,你需要把&n 2025-03-03 题解 > LeetCode #题解 #字符串 #动态规划 #LeetCode #回文 #困难 #DP #回文串
132.分割回文串 II:动态规划 【LetMeFly】132.分割回文串 II:动态规划力扣题目链接:https://leetcode.cn/problems/palindrome-partitioning-ii/ 给你一个字符串 s,请你将 s 分割成一些子串,使每个子串都是回文串。 返回符合要求的 最少分割次数 。 示例 1: 输入:s = "aab" 输出:1 解释:只需一次分割就可将 2025-03-02 题解 > LeetCode #题解 #字符串 #动态规划 #LeetCode #回文 #困难 #DP #回文串
2353.设计食物评分系统:哈希表 + 有序集合 【LetMeFly】2353.设计食物评分系统:哈希表 + 有序集合力扣题目链接:https://leetcode.cn/problems/design-a-food-rating-system/ 设计一个支持下述操作的食物评分系统: 修改 系统中列出的某种食物的评分。 返回系统中某一类烹饪方式下评分最高的食物。 实现 FoodRatings 类: FoodRatings(Str 2025-02-28 题解 > LeetCode #题解 #中等 #LeetCode #堆(优先队列) #哈希表 #map #set #设计 #有序集合
2296.设计一个文本编辑器:对顶栈-主要是要细心下标问题(ASCII字符通俗语言描述) 【LetMeFly】2296.设计一个文本编辑器:对顶栈-主要是要细心下标问题(ASCII字符通俗语言描述)力扣题目链接:https://leetcode.cn/problems/design-a-text-editor/ 请你设计一个带光标的文本编辑器,它可以实现以下功能: 添加:在光标所在处添加文本。 删除:在光标所在处删除文本(模拟键盘的删除键)。 移动:将光标往左或者往右移动。 2025-02-27 题解 > LeetCode #题解 #模拟 #字符串 #LeetCode #链表 #困难 #栈 #设计 #双向链表
1472.设计浏览器历史记录:一个数组完成模拟,单次操作均O(1) 【LetMeFly】1472.设计浏览器历史记录:一个数组完成模拟,单次操作均O(1)力扣题目链接:https://leetcode.cn/problems/design-browser-history/ 你有一个只支持单个标签页的 浏览器 ,最开始你浏览的网页是 homepage ,你可以访问其他的网站 url ,也可以在浏览历史中后退  2025-02-26 题解 > LeetCode #题解 #中等 #数组 #LeetCode #链表 #栈 #设计 #双向链表 #数据流
1206.设计跳表:算法详解 【LetMeFly】1206.设计跳表:算法详解力扣题目链接:https://leetcode.cn/problems/design-skiplist/ 不使用任何库函数,设计一个 跳表 。 跳表 是在 O(log(n)) 时间内完成增加、删除、搜索操作的数据结构。跳表相比于树堆与红黑树,其功能与性能相当,并且跳表的代码长度相较下更短,其设计思想与链表相似。 例如,一个跳表包含 [30, 40 2025-02-26 题解 > LeetCode #题解 #LeetCode #链表 #困难 #设计 #跳表 #算法