数组列表中的最大距离题目表述 给定 m 个数组,每个数组都已经按照升序排好序了。现在你需要从两个不同的数组中选择两个整数(每个数组选一个)并且计算它们的距离。两个整数 a 和 b 之间的距离定义为它们差的绝对值 a-b 。你的任务就是去找到最大距离 示例 1 输入: [[1,2,3], [4,5], [1,2,3]] 输出: 4 解释:一种得到答案 4 的方法是从第一个数...yczha大约 1 分钟Algorithmleetcode数组PythonGolang
数据流的中位数题目表述 如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值。 解题思路 求中位数,避免不了需要用一个容器将流入的数据保存起来,那么选择什么容器比较合适呢? 1)数组 最简单的容器。如果是未排序的数组,找中位数的方法采用...yczha大约 3 分钟Algorithmleetcode堆排序PythonGolang
和为k的子数组题目表述 给定一个整数数组和一个整数 k ,请找到该数组中和为 k 的连续子数组的个数。 示例 1 输入:nums = [1,1,1], k = 2 输出: 2 解释: 此题 [1,1] 与 [1,1] 为两种不同的情况 示例 2 输入:nums = [1,2,3], k = 3 输出: 2 :::tip 提示 1yczha小于 1 分钟AlgorithmleetcodePythonGolang
字符串的排列题目表述 输入一个字符串,打印出该字符串中字符的所有排列。 你可以以任意顺序返回这个字符串数组,但里面不能有重复元素。 示例 输入:s = "abc" 输出:["abc","acb","bac","bca","cab","cba"] :::tip 限制 1yczha小于 1 分钟Algorithmleetcode递归PythonGolang
打家劫舍题目表述 你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。 给定一个代表每个房屋存放金额的非负整数数组,计算你 不触动警报装置的情况下 ,一夜之内能够偷窃到的最高金额。 示例 1 输入:[1,2,3,1] 输出:4 解...yczha大约 1 分钟Algorithmleetcode动态规划PythonGolang
解数独题目表述 编写一个程序,通过填充空格来解决数独问题。 数独的解法需 遵循如下规则: 数字 1-9 在每一行只能出现一次。 数字 1-9 在每一列只能出现一次。 数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。(请参考示例图) 数独部分空格内已填入了数字,空白格用 '.' 表示。 示例 1 输入:board = [["5","3","."...yczha大约 2 分钟Algorithmleetcode深度优先递归PythonGolang
打家劫舍Ⅱ题目表述 你是一个专业的小偷,计划偷窃沿街的房屋,每间房内都藏有一定的现金。这个地方所有的房屋都 围成一圈 ,这意味着第一个房屋和最后一个房屋是紧挨着的。同时,相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警 。 给定一个代表每个房屋存放金额的非负整数数组,计算你 在不触动警报装置的情况下 ,今晚能够偷窃到的最高...yczha大约 1 分钟Algorithmleetcode动态规划PythonGolang
买卖股票的最佳时机含手续费题目表述 给定一个整数数组 prices,其中 prices[i]表示第 i 天的股票价格 ;整数 fee 代表了交易股票的手续费用。 你可以无限次地完成交易,但是你每笔交易都需要付手续费。如果你已经购买了一个股票,在卖出它之前你就不能再继续购买股票了。 返回获得利润的最大值。 注意:这里的一笔交易指买入持有并卖出股票的整个过程,每笔交易你只需要为支付...yczha大约 1 分钟Algorithmleetcode动态规划PythonGolang
买卖股票的最佳时机题目表述 给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。 你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。 返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回 0 。 示例 1 输入:[7,1,5,3,6,4...yczha大约 1 分钟Algorithmleetcode动态规划双指针PythonGolang