22. 括号生成 --力扣 --JAVA

题目 解题思路 n个括号,即拥有n个左括号和n个右括号,且在拼接字符串的过程中左括号的数量应该永远大于等于右括号的数量;当左括号的数量大于右括号且小于n的时候,允许添加左括号,当左括号的数量等于右括号时只允许添加左括号; 代码展示 class Solution { List<String> ans = new ArrayList<>(); int size; public List<String> g...

【leetcode】力扣热门之反转链表【简单难度】

题目描述 给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。 用例 输入:head = [1,2,3,4,5] 输出:[5,4,3,2,1] 输入:head = [1,2] 输出:[2,1] 输入:head = [] 输出:[] 提示: 链表中节点的数目范围是 [0, 5000]-5000 <= Node.val <= 5000 示例代码 解法1:直接反转法 var reverseL...

2487. 从链表中移除节点 --力扣 --JAVA

题目 解题思路 移除每个右侧有一个更大数值的节点,所以可以利用深度遍历,从后往前进行比较;创建变量max来表示当前右侧的最大值;将最后节点的值赋值给max;若当前节点的值小于当前节点则移除,否则修改max为当前节点的值,链表是单向的,直接移除当前节点不好移除,可以将下个节点的值和next赋值给当前节点,即用下个节点取代当前节点。 代码展示 class Solution { private int ma...

一站式指南:第 377 场力扣周赛的终极题解

比赛详情 比赛地址 题目一很简单题目二主要是题目长了点,其实解法很常规(比赛后才意识到)题目三套用Dijkstra算法题目四没时间解答水平还有待提升(其实就是需要灵活组合运用已知的算法,有点类似大模型的Agent) 题解和思路 第一题:最小数字游戏  class Solution: def numberGame(self, nums: List[int]) -> List[int]: nums.sor...

单挑力扣(LeetCode)SQL题:178. 分数排名(难度:中等)

1 || 3.85 | 2 || 3.65 | 3 || 3.65 | 3 || 3.50 | 4 |+-------+------+通过次数166,157提交次数273,273 来源:力扣(LeetCode)链接:https://leetcode.cn/problems/rank-scores #测试数据Create table If Not Exists Scores (id i...

100148. 最小数字游戏 --力扣 -- JAVA

题目 解题思路 对数组进行从小到大的排序;每两个元素交换位置;返回数组。 代码展示 class Solution { public int[] numberGame(int[] nums) { Arrays.sort(nums); int n = nums.length; for (int i = 0; i < n; i += 2){ int temp = nums[i]; nums[i] = num...

1962. 移除石子使总数最小 --力扣 --JAVA

题目 解题思路 每次对当前石子最多的堆进行操作;利用优先队列的倒序排列,可以便捷的获取最大的石子堆;统计操作前的石子总数;获取优先队列的首节点,移除对应石子,再将移除后的石子堆添加回队列,同时总数减去移除的石子。 代码展示 class Solution { public int minStoneSum(int[] piles, int k) { PriorityQueue<Integer> pq = ...

单挑力扣(LeetCode)SQL题:1549. 每件商品的最新订单(难度:中等)

另一方面想进一步提升,却不知道方法。 其实,对于技能型知识,我的观点一贯都是:多练习、多实践。正所谓实践出真知,学完书本的知识,很多时候也只能做到知道,距离熟练的应用还差的很远。 在咱们程序员圈子里,力扣(LeetCode)和牛客(nowcoder.com)是两个公认比较好的实践平台。题库比较多,还有不少大厂的笔试真题,特别适合找工作时撸一撸。当然,作为平时个人技术提升的练习题,也是非常不错的。 最近...

2697. 字典序最小回文串 --力扣 --JAVA

题目 解题思路 将字符串转换成字符数组;遍历字符数组,首位对称字符对比;若不相同则将较小的字符赋值给较大的字符; 代码展示 class Solution { public String makeSmallestPalindrome(String s) { char[] chars = s.toCharArray(); int n = chars.length; for (int i = 0; i < ...

39. 组合总和 --力扣 --JAVA

题目 解题思路 对数组进行排序;递推寻找合适的元素;当目标结果为0时添加到返回结果中;当索引越界或目标值小于0时返回停止当前递推;因为允许重复获取同一元素,所以分两种,一种下一元素还是当前元素,另一种为索引后推。 代码展示 class Solution { List<List<Integer>> ans = new ArrayList<>(); int[] candidates; int len; p...
© 2024 LMLPHP 关于我们 联系我们 友情链接 耗时0.014089(s)
2024-04-19 15:11:11 1713510671