java练习
文章平均质量分 62
Mikudd3
这个作者很懒,什么都没留下…
展开
-
JAVA练习110- 基本计算器 II
4月17日练习内容给你一个字符串表达式 s ,请你实现一个基本计算器来计算并返回它的值。整数除法仅保留整数部分。你可以假设给定的表达式总是有效的。所有中间结果将在 [-231, 231 - 1] 的范围内。注意:不允许使用任何将字符串作为数学表达式计算的内置函数,比如 eval() 。示例 1:输入:s = "3+2*2"输出:7示例 2:输入:s = " 3/2 "输出:1示例 3:输入:s = " 3+5 / 2 "输出:5来源:力扣(LeetCode)链接:https://leetcode原创 2023-04-17 08:42:38 · 290 阅读 · 1 评论 -
JAVA练习109-寻找重复数
4月16日练习内容给定一个包含 n + 1 个整数的数组 nums ,其数字都在 [1, n] 范围内(包括 1 和 n),可知至少存在一个重复的整数。假设 nums 只有 一个重复的整数 ,返回 这个重复的数 。你设计的解决方案必须 不修改 数组 nums 且只用常量级 O(1) 的额外空间。示例 1:输入:nums = [1,3,4,2,2]输出:2示例 2:输入:nums = [3,1,3,4,2]输出:3来源:力扣(LeetCode)链接:https://leetcode.cn/proble原创 2023-04-16 08:37:23 · 305 阅读 · 0 评论 -
JAVA练习108-最长连续序列
4月15日练习内容给定一个未排序的整数数组 nums ,找出数字连续的最长序列(不要求序列元素在原数组中连续)的长度。请你设计并实现时间复杂度为 O(n) 的算法解决此问题。示例 1:输入:nums = [100,4,200,1,3,2]输出:4解释:最长数字连续序列是 [1, 2, 3, 4]。它的长度为 4。示例 2:输入:nums = [0,3,7,2,5,8,4,6,0,1]输出:9来源:力扣(LeetCode)链接:https://leetcode.cn/problems/longest原创 2023-04-15 08:29:19 · 771 阅读 · 0 评论 -
JAVA练习107-缺失的第一个正数
4月13日练习内容给你一个未排序的整数数组 nums ,请你找出其中没有出现的最小的正整数。请你实现时间复杂度为 O(n) 并且只使用常数级别额外空间的解决方案。示例 1:输入:nums = [1,2,0]输出:3示例 2:输入:nums = [3,4,-1,1]输出:2示例 3:输入:nums = [7,8,9,11,12]输出:1来源:力扣(LeetCode)链接:https://leetcode.cn/problems/first-missing-positive著作权归领扣网络所有。原创 2023-04-13 08:52:59 · 303 阅读 · 0 评论 -
JAVA练习106- 生命游戏
目录前言一、题目-生命游戏1.题目描述2.思路与代码2.1 思路2.2 代码总结4 月12日练习内容根据 百度百科 , 生命游戏 ,简称为 生命 ,是英国数学家约翰·何顿·康威在 1970 年发明的细胞自动机。给定一个包含 m × n 个格子的面板,每一个格子都可以看成是一个细胞。每个细胞都具有一个初始状态: 1 即为 活细胞 (live),或 0 即为 死细胞 (dead)。每个细胞与其八个相邻位置(水平,垂直,对角线)的细胞都遵循以下四条生存定律:如果活细胞周围八个位置的活细胞数少于两个,则该位置活细胞原创 2023-04-12 09:25:42 · 476 阅读 · 0 评论 -
JAVA练习105-盛最多水的容器
目录前言一、题目-盛最多水的容器1.题目描述2.思路与代码2.1 思路2.2 代码总结4月11日练习内容给定一个长度为 n 的整数数组 height 。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。返回容器可以储存的最大水量。说明:你不能倾斜容器。示例 1:示例 2:来源:力扣(LeetCode)链接:https://leetcode.cn/problems/container-with-mo原创 2023-04-11 09:06:14 · 346 阅读 · 0 评论 -
JAVA练习104-四数相加 II
目录前言一、题目-四数相加 II1.题目描述2.思路与代码2.1 思路2.2 代码总结4月10日练习内容给你四个整数数组 nums1、nums2、nums3 和 nums4 ,数组长度都是 n ,请你计算有多少个元组 (i, j, k, l) 能满足:示例 1:示例 2:来源:力扣(LeetCode)链接:https://leetcode.cn/problems/4sum-ii著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。1.利用map集合键值对特性2.遍历前两个数组,将其对应和存原创 2023-04-10 08:53:31 · 323 阅读 · 0 评论 -
JAVA练习103-螺旋矩阵
4月9日练习内容给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。示例 1:来源:力扣(LeetCode)链接:https://leetcode.cn/problems/spiral-matrix著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。1.边界条件判断,判断数组是否为空或者数组长度是否为02.遍历矩阵,先从上面行开始,从左往右打印,行不变,改变列的下标。3.右边列,从上往下打印,列不变,改变行的下标。4下面行,从右往左打印,行不变原创 2023-04-09 07:57:42 · 346 阅读 · 0 评论 -
JAVA练习102-除自身以外数组的乘积
4月8日练习内容给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。请不要使用除法,且在 O(n) 时间复杂度内完成此题。示例 1:输入: nums = [1,2,3,4]输出: [24,12,8,6]示例 2:输入: nums = [-1,1,0,-3,3]输出: [0,0,9,0,0]来源:力扣(LeetCod原创 2023-04-08 08:42:53 · 359 阅读 · 0 评论 -
JAVA练习101-任务调度器
4月7日练习内容给你一个用字符数组 tasks 表示的 CPU 需要执行的任务列表。其中每个字母表示一种不同种类的任务。任务可以以任意顺序执行,并且每个任务都可以在 1 个单位时间内执行完。在任何一个单位时间,CPU 可以完成一个任务,或者处于待命状态。然而,两个 相同种类 的任务之间必须有长度为整数 n 的冷却时间,因此至少有连续 n 个单位时间内 CPU 在执行不同的任务,或者在待命状态。你需要计算完成所有任务所需要的 最短时间 。示例 1:示例 2:示例 3:来源:力扣(LeetCode)链接:ht原创 2023-04-07 14:46:21 · 297 阅读 · 0 评论 -
JAVA练习100-多数元素
给定一个大小为 n 的数组 nums ,返回其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。你可以假设数组是非空的,并且给定的数组总是存在多数元素。示例 1:示例 2:来源:力扣(LeetCode)链接:https://leetcode.cn/problems/majority-element著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。代码如下(示例):提示:这里对文章进行总结:原创 2023-04-06 11:09:18 · 305 阅读 · 0 评论 -
JAVA练习99-逆波兰表达式求值
4月5日练习内容给你一个字符串数组 tokens ,表示一个根据 逆波兰表示法 表示的算术表达式。请你计算该表达式。返回一个表示表达式值的整数。注意:有效的算符为 '+'、'-'、'*' 和 '/' 。每个操作数(运算对象)都可以是一个整数或者另一个表达式。两个整数之间的除法总是 向零截断 。表达式中不含除零运算。输入是一个根据逆波兰表示法表示的算术表达式。答案及所有中间计算结果可以用 32 位 整数表示。示例 1:示例 2:示例 3:来源:力扣(LeetCode)链接:https://lee原创 2023-04-05 09:20:42 · 377 阅读 · 0 评论 -
JAVA练习98-. 两整数之和
4月4日练习内容给你两个整数 a 和 b ,不使用 运算符 + 和 - ,计算并返回两整数之和。示例 1:示例 2:来源:力扣(LeetCode)链接:https://leetcode.cn/problems/sum-of-two-integers著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。代码如下(示例):提示:这里对文章进行总结:原创 2023-04-04 08:14:25 · 58 阅读 · 0 评论 -
JAVA练习97- 分数到小数
4月3日练习内容给定两个整数,分别表示分数的分子 numerator 和分母 denominator,以 字符串形式返回小数 。如果小数部分为循环小数,则将循环的部分括在括号内。如果存在多个答案,只需返回 任意一个 。对于所有给定的输入,保证 答案字符串的长度小于 104 。示例 1:示例 2:示例 3:来源:力扣(LeetCode)链接:https://leetcode.cn/problems/fraction-to-recurring-decimal著作权归领扣网络所有。商业转载请联系官方授权,非商原创 2023-04-03 08:29:57 · 172 阅读 · 0 评论 -
JAVA练习96-两数相除
目录前言一、题目-两数相除1.题目描述2.思路与代码2.1 思路2.2 代码总结4月2日练习内容给你两个整数,被除数 dividend 和除数 divisor。将两数相除,要求 不使用 乘法、除法和取余运算。整数除法应该向零截断,也就是截去(truncate)其小数部分。例如,8.345 将被截断为 8 ,-2.7335 将被截断至 -2 。返回被除数 dividend 除以除数 divisor 得到的 商 。注意:假设我们的环境只能存储 32 位 有符号整数,其数值范围是 [−231, 231 − 1]原创 2023-04-02 08:20:49 · 150 阅读 · 0 评论 -
JAVA练习95-x 的平方根
4月1日练习内容给你一个非负整数 x ,计算并返回 x 的 算术平方根 。由于返回类型是整数,结果只保留 整数部分 ,小数部分将被 舍去 。注意:不允许使用任何内置指数函数和算符,例如 pow(x, 0.5) 或者 x ** 0.5 。示例 1:示例 2:来源:力扣(LeetCode)链接:https://leetcode.cn/problems/sqrtx著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。提示:这里对文章进行总结:原创 2023-04-01 09:55:18 · 63 阅读 · 0 评论 -
JAVA练习95- Pow(x, n)
3月31日练习内容实现 pow(x, n) ,即计算 x 的整数 n 次幂函数(即,xn )。示例 1:示例 2:示例 3:来源:力扣(LeetCode)链接:https://leetcode.cn/problems/powx-n著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。代码如下(示例): 提示:这里对文章进行总结:原创 2023-03-31 08:55:22 · 144 阅读 · 0 评论 -
JAVA练习94-Excel 表列序号
目录前言一、题目-Excel 表列序号1.题目描述2.思路与代码2.1 思路2.2 代码总结3月30日练习内容代码如下(示例):2.思路与代码2.1 思路1.将字符串转为字符数组2.取每个字符所表示的值,如果字符数量大于1,则前一个字符乘26加上后一个字符所表示的数字3.最后输出数字即可代码如下(示例):提示:这里对文章进行总结:原创 2023-03-30 11:00:11 · 423 阅读 · 0 评论 -
JAVA练习93-阶乘后的零
目录前言一、题目-阶乘后的零1.题目描述2.思路与代码2.1 思路2.2 代码总结3月29日练习内容给定一个整数 n ,返回 n! 结果中尾随零的数量。提示 n! = n * (n - 1) * (n - 2) * ... * 3 * 2 * 1示例 1:示例 2:示例 3:来源:力扣(LeetCode)链接:https://leetcode.cn/problems/factorial-trailing-zeroes著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。1.要想阶乘后有0,原创 2023-03-29 09:01:00 · 133 阅读 · 0 评论 -
JAVA练习92-快乐数
3月28日练习内容编写一个算法来判断一个数 n 是不是快乐数。「快乐数」 定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和。然后重复这个过程直到这个数变为 1,也可能是 无限循环 但始终变不到 1。如果这个过程 结果为 1,那么这个数就是快乐数。如果 n 是 快乐数 就返回 true ;不是,则返回 false 。示例 1:示例 2:来源:力扣(LeetCode)链接:https://leetcode.cn/problems/happy-number著作权归领扣网络所有。商业转原创 2023-03-28 08:58:50 · 227 阅读 · 1 评论 -
JAVA练习90-二叉树的序列化与反序列化
目录前言一、题目-二叉树的序列化与反序列化1.题目描述2.思路与代码2.1 思路2.2 代码总结3月26日练习内容序列化是将一个数据结构或者对象转换为连续的比特位的操作,进而可以将转换后的数据存储在一个文件或者内存中,同时也可以通过网络传输到另一个计算机环境,采取相反方式重构得到原数据。请设计一个算法来实现二叉树的序列化与反序列化。这里不限定你的序列 / 反序列化算法执行逻辑,你只需要保证一个二叉树可以被序列化为一个字符串并且将这个字符串反序列化为原始的树结构。提示: 输入输出格式与 LeetCode 目前原创 2023-03-26 10:06:50 · 246 阅读 · 0 评论 -
JAVA练习89-最长递增子序列
3月25日练习内容提示:以下是本篇文章正文内容,下面案例可供参考提示:这里对文章进行总结:月。原创 2023-03-25 09:04:50 · 613 阅读 · 0 评论 -
JAVA练习88-零钱兑换
目录前言一、题目-零钱兑换1.题目描述2.思路与代码2.1 思路2.2 代码总结3月24日练习内容给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。计算并返回可以凑成总金额所需的 最少的硬币个数 。如果没有任何一种硬币组合能组成总金额,返回 -1 。你可以认为每种硬币的数量是无限的。示例 1:示例 2:示例 3:来源:力扣(LeetCode)链接:https://leetcode.cn/problems/coin-change著作权归领扣网络所有。商业转载请联原创 2023-03-24 09:09:15 · 557 阅读 · 0 评论 -
JAVA练习87-不同路径
目录前言一、题目-不同路径1.题目描述2.思路与代码2.1 思路2.2 代码总结3月23日练习内容一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。问总共有多少条不同的路径?示例 1:示例 2:示例 3:示例 4:来源:力扣(LeetCode)链接:https://leetcode.cn/problems/unique-paths著作权归领扣网络所有。商业转载请联原创 2023-03-23 08:10:44 · 198 阅读 · 0 评论 -
JAVA练习86-跳跃游戏
目录前言一、题目-跳跃游戏1.题目描述2思路与代码2.1 思路2.2 代码总结3月22日练习内容给定一个非负整数数组 nums ,你最初位于数组的 第一个下标 。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个下标。示例 1:示例 2:来源:力扣(LeetCode)链接:https://leetcode.cn/problems/jump-game著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。代码如下(示例):提示:这里对文章进行总结:原创 2023-03-22 08:36:31 · 109 阅读 · 0 评论 -
JAVA练习85-搜索二维矩阵 II
3月21日练习内容提示:以下是本篇文章正文内容,下面案例可供参考。原创 2023-03-21 09:04:32 · 183 阅读 · 0 评论 -
JAVA练习84-搜索旋转排序数组
目录前言一、题目-搜索旋转排序数组1.题目描述2.思路与代码2.1 思路2.2 代码总结3月20日练习内容整数数组 nums 按升序排列,数组中的值 互不相同 。在传递给函数之前,nums 在预先未知的某个下标 k(0原创 2023-03-20 09:27:40 · 250 阅读 · 0 评论 -
JAVA练习83-合并区间
目录前言一、题目-. 合并区间1.题目描述2.思路与代码2.1 思路2.2 代码总结3月19日练习内容以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, endi] 。请你合并所有重叠的区间,并返回 一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间 。示例 1:示例 2:来源:力扣(LeetCode)链接:https://leetcode.cn/problems/merge-intervals著作权归领扣网络所有。商业转载请联系官方授权原创 2023-03-19 08:46:39 · 310 阅读 · 0 评论 -
JAVA练习82-在排序数组中查找元素的第一个和最后一个位置
3月18日练习内容给你一个按照非递减顺序排列的整数数组 nums,和一个目标值 target。请你找出给定目标值在数组中的开始位置和结束位置。如果数组中不存在目标值 target,返回 [-1, -1]。你必须设计并实现时间复杂度为 O(log n) 的算法解决此问题。示例 1:示例 2:示例 3:来源:力扣(LeetCode)链接:https://leetcode.cn/problems/find-first-and-last-position-of-element-in-sorted-array著作原创 2023-03-18 09:27:32 · 398 阅读 · 0 评论 -
JAVA练习79-前 K 个高频元素
3月15日练习内容给你一个整数数组 nums 和一个整数 k ,请你返回其中出现频率前 k 高的元素。你可以按 任意顺序 返回答案。示例 1:示例 2:来源:力扣(LeetCode)链接:https://leetcode.cn/problems/top-k-frequent-elements著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。代码如下(示例):提示:这里对文章进行总结:原创 2023-03-15 09:26:43 · 265 阅读 · 0 评论 -
JAVA练习78-. 颜色分类
3月14日练习内容给定一个包含红色、白色和蓝色、共 n 个元素的数组 nums ,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。必须在不使用库内置的 sort 函数的情况下解决这个问题。示例 1:示例 2:来源:力扣(LeetCode)链接:https://leetcode.cn/problems/sort-colors著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。1.创建三个指针,一个为数组下原创 2023-03-14 09:48:15 · 138 阅读 · 0 评论 -
JAVA练习77- 单词搜索
目录前言一、题目-单词搜索1.题目描述2.思路与代码2.1 思路2.2 代码总结3月13日练习内容给定一个 m x n 二维字符网格 board 和一个字符串单词 word 。如果 word 存在于网格中,返回 true ;否则,返回 false 。单词必须按照字母顺序,通过相邻的单元格内的字母构成,其中“相邻”单元格是那些水平相邻或垂直相邻的单元格。同一个单元格内的字母不允许被重复使用。示例 1:示例 2:示例 3:来源:力扣(LeetCode)链接:https://leetcode.cn/proble原创 2023-03-13 16:33:17 · 230 阅读 · 0 评论 -
JAVA练习76-子集
3月12日练习内容提示:以下是本篇文章正文内容,下面案例可供参考。原创 2023-03-12 09:49:31 · 104 阅读 · 0 评论 -
JAVA练习75-全排列
3月11日练习内容给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 。你可以 按任意顺序 返回答案。示例 1:示例 2:示例 3:来源:力扣(LeetCode)链接:https://leetcode.cn/problems/permutations著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。代码如下(示例):提示:这里对文章进行总结:原创 2023-03-11 09:24:12 · 327 阅读 · 0 评论 -
JAVA练习74-括号生成
3月10日练习内容提示:以下是本篇文章正文内容,下面案例可供参考提示:这里对文章进行总结:例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。原创 2023-03-10 08:45:37 · 434 阅读 · 0 评论 -
JAVA练习73-电话号码的字母组合
3月9日练习内容给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。示例 1:示例 2:示例 3:来源:力扣(LeetCode)链接:https://leetcode.cn/problems/letter-combinations-of-a-phone-number著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。代码如下(示例):提示:这里对文章进行总结:原创 2023-03-09 10:38:42 · 291 阅读 · 0 评论 -
JAVA练习72-岛屿数量
3月8日练习内容给你一个由 '1'(陆地)和 '0'(水)组成的的二维网格,请你计算网格中岛屿的数量。岛屿总是被水包围,并且每座岛屿只能由水平方向和/或竖直方向上相邻的陆地连接形成。此外,你可以假设该网格的四条边均被水包围。示例 1:示例 2:来源:力扣(LeetCode)链接:https://leetcode.cn/problems/number-of-islands著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。代码如下(示例):提示:这里对文章进行总结:原创 2023-03-08 08:42:42 · 165 阅读 · 0 评论 -
JAVA练习71- 二叉搜索树中第K小的元素
3月7日练习内容给定一个二叉搜索树的根节点 root ,和一个整数 k ,请你设计一个算法查找其中第 k 个最小元素(从 1 开始计数)。示例 1:示例 2:来源:力扣(LeetCode)链接:https://leetcode.cn/problems/kth-smallest-element-in-a-bst著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。代码如下(示例):提示:这里对文章进行总结:原创 2023-03-07 09:10:09 · 254 阅读 · 0 评论 -
JAVA练习70-填充每个节点的下一个右侧节点指针
3月6日练习内容提示:以下是本篇文章正文内容,下面案例可供参考提示:这里对文章进行总结:例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。原创 2023-03-06 08:37:23 · 196 阅读 · 0 评论 -
JAVA练习69- 从前序与中序遍历序列构造二叉树
3月5日练习内容给定两个整数数组 preorder 和 inorder ,其中 preorder 是二叉树的先序遍历, inorder 是同一棵树的中序遍历,请构造二叉树并返回其根节点。示例 1:示例 2: 来源:力扣(LeetCode)链接:https://leetcode.cn/problems/construct-binary-tree-from-preorder-and-inorder-traversal著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。代码如下(示例):原创 2023-03-05 09:48:39 · 412 阅读 · 0 评论