华为OD机试 Java 实现【输出单向链表中倒数第k个结点】【LeetCode练习题】,附详细解题思路

一、题目描述 输入一个单向链表,输出该链表中倒数第k个结点,链表的倒数第1个结点为链表的尾指针。 链表结点定义如下: class ListNode{ int value; ListNode next; public ListNode(){ } public ListNode(int value, ListNode next){ this.value = value; this.next = next; ...

LeetCode 1029. Two City Scheduling 【贪心,堆,排序,快速选择】中等

公司计划面试 2n 人。给你一个数组 costs ,其中 costs[i] = [aCosti, bCosti] 。第 i 人飞往 a 市的费用为 aCosti ,飞往 b 市的费用为 bCosti 。 返回将每个人都飞到 a 、b 中某座城市的最低费用,要求每个城市都有 n 人抵达。 示例 1: 输入:costs = [[10,20],[30,200],[400,50],[30,20]]输出:110...

代码随想录刷题第48天|LeetCode198打家劫舍、LeetCode213打家劫舍II、LeetCode337打家劫舍III

1、LeetCode198打家劫舍 题目链接:198、打家劫舍 1、dp[i]:考虑下标i(包括i)以内的房屋,最多可以偷窃的金额为dp[i]。 2、递推公式: 如果偷第i房间,那么dp[i] = dp[i - 2] + nums[i] ; 如果不偷第i房间,那么dp[i] = dp[i - 1]; 然后dp[i]取最大值,即dp[i] = max(dp[i - 2] + nums[i], dp[i - ...

Rust每日一练(Leetday0024) 爬楼梯、简化路径、编辑距离

目录 70. 爬楼梯 Climbing Stairs  🌟 71. 简化路径 Simplify Path  🌟🌟 72. 编辑距离 Edit Distance  🌟🌟🌟 🌟 每日一练刷题专栏 🌟 Rust每日一练 专栏 Golang每日一练 专栏 Python每日一练 专栏 C/C++每日一练 专栏 Java每日一练 专栏 70. 爬楼梯 Climbing Stairs 假设你正在爬楼梯。需要 n 阶你...

算法leetcode|54. 螺旋矩阵(rust重拳出击)

文章目录 54. 螺旋矩阵:样例 1:样例 2:提示: 分析:题解:rust:go:c++:python:java:每次循环移动一步:每次循环完成一个顺时针: 54. 螺旋矩阵: 给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。 样例 1: 输入: matrix = [[1,2,3],[4,5,6],[7,8,9]] 输出: [1,2,3,6,9,8,7,...

Rust每日一练(leetDay0023) 二进制求和、左右对齐、平方根

目录 67. 二进制求和 Add Binary  🌟 68. 文本左右对齐 Text Justification  🌟🌟🌟 69. x 的平方根  Sqrt x  🌟 🌟 每日一练刷题专栏 🌟 Rust每日一练 专栏 Golang每日一练 专栏 Python每日一练 专栏 C/C++每日一练 专栏 Java每日一练 专栏 67. 二进制求和 Add Binary 给你两个二进制字符串,返回它们的和(用二...

刷题记录:哈希 | leetcode-2352. 相等行列对 2023/6/6

2352. 相等行列对 这题还是非常简单的。如果用模拟的方法,时间复杂度要达到O(n^3)了,感觉不太可。 这回学聪明了,没有一上来就想着暴力模拟。用哈希的办法,可以把时间复杂度降为O(n^2)。 我的思路是先转置矩阵,再用哈希Map。基本思路就是把grid当中的每一行存到一个哈希Map里,并记录它出现的次数;然后比对转置数组tmp的每一行是否在哈希Map中出现,以及出现的次数。 我想先转置矩阵的原因是,...

LeetCode 周赛 347(2023/05/28)二维空间上的 LIS 最长递增子序列问题

往期回顾:LeetCode 单周赛第 346 场 · 仅 68 人 AK 的最短路问题 周赛 347 概览T1. 移除字符串中的尾随零(Easy) 标签:模拟、字符串 T2. 对角线上不同值的数量差(Easy) 标签:前后缀分解 T3. 使所有字符相等的最小成本(Medium) 标签:模拟、贪心 T4. 矩阵中严格递增的单元格数(Hard) 标签:排序、动态规划 T1. 移除字符串中的尾随零(Easy...

LeetCode双向链表】LRU详解,双向链表实战

LRU缓存请你设计并实现一个满足 LRU (最近最少使用) 缓存 约束的数据结构。实现 LRUCache 类: LRUCache(int capacity) 以 正整数 作为容量 capacity 初始化 LRU 缓存int get(int key) 如果关键字 key 存在于缓存中,则返回关键字的值,否则返回 -1 。void put(int key, int value) 如果关键字 key ...

Golang每日一练(leetDay0086) 回文链表、删除链表节点

目录 234. 回文链表 Palindrome Linked-list  🌟 237. 删除链表中的节点 Delete Node In a Linked-list  🌟🌟 🌟 每日一练刷题专栏 🌟 Rust每日一练 专栏 Golang每日一练 专栏 Python每日一练 专栏 C/C++每日一练 专栏 Java每日一练 专栏 234. 回文链表 Palindrome Linked-list 给你一个单链...
© 2024 LMLPHP 关于我们 联系我们 友情链接 耗时0.005769(s)
2024-03-29 07:58:29 1711670309