文章 2023-11-29 来自:开发者社区

2336. 无限集中的最小数字 --力扣 --JAVA

 题目现有一个包含所有正整数的集合 [1, 2, 3, 4, 5, ...] 。实现 SmallestInfiniteSet 类:SmallestInfiniteSet() 初始化 SmallestInfiniteSet 对象以包含 所有 正整数。int popSmallest()移除 并返回该无限集中的最小整数。void addBack(int num) 如果正整数 num不 存在于....

2336. 无限集中的最小数字 --力扣 --JAVA
文章 2023-11-28 来自:开发者社区

142. 环形链表 II --力扣 --JAVA

 题目给定一个链表的头节点  head ,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。如果 pos 是 -1,则在该链表中没有环。注意:pos 不作为参数进行传递,仅仅是....

142. 环形链表 II --力扣 --JAVA
文章 2023-11-28 来自:开发者社区

1670. 设计前中后队列 --力扣 --JAVA

 题目请你设计一个队列,支持在前,中,后三个位置的 push 和 pop 操作。请你完成 FrontMiddleBack 类:FrontMiddleBack() 初始化队列。void pushFront(int val) 将 val 添加到队列的 最前面 。void pushMiddle(int val) 将 val 添加到队列的 正中间 。void pushBack(int val)....

1670. 设计前中后队列 --力扣 --JAVA
文章 2023-11-27 来自:开发者社区

240. 搜索二维矩阵 II -- 力扣 --JAVA

 题目编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target 。该矩阵具有以下特性:每行的元素从左到右升序排列。每列的元素从上到下升序排列。解题思路一逐个遍历代码展示class Solution { public boolean searchMatrix(int[][] matrix, int target) { int m = ...

240. 搜索二维矩阵 II -- 力扣 --JAVA
文章 2023-11-27 来自:开发者社区

907. 子数组的最小值之和 --力扣 --JAVA

 题目给定一个整数数组 arr,找到 min(b) 的总和,其中 b 的范围为 arr 的每个(连续)子数组。由于答案可能很大,因此 返回答案模 10^9 + 7 。解题思路找到以当前值为最小值所能组成的子数组;若存在两个相同元素则左右边界只允许包含一边,否则会重复计算中间区域;在每次计算后对10^9 + 7取余。代码展示class Solution { public int ...

907. 子数组的最小值之和 --力扣 --JAVA
文章 2023-11-26 来自:开发者社区

48. 旋转图像 --力扣 --JAVA

 题目给定一个 n × n 的二维矩阵 matrix 表示一个图像。请你将图像顺时针旋转 90 度。你必须在 原地 旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要 使用另一个矩阵来旋转图像。解题思路顺时针旋转90度 == 上下翻转 + 对角线翻转;两次两层循环进行数组翻转。代码展示class Solution { public void rotate(int[][] m...

48. 旋转图像 --力扣 --JAVA
文章 2023-11-26 来自:开发者社区

828. 统计子串中的唯一字符 --力扣 --JAVA

 题目我们定义了一个函数 countUniqueChars(s) 来统计字符串 s 中的唯一字符,并返回唯一字符的个数。例如:s = "LEETCODE" ,则其中 "L", "T","C","O","D" 都是唯一字符,因为它们只出现一次,所以 countUniqueChars(s) = 5 。本题将会给你一个字符串 s ,我们需要返回 countUniqueChars(t) 的总和....

828. 统计子串中的唯一字符 --力扣 --JAVA
文章 2023-11-25 来自:开发者社区

594. 最长和谐子序列 --力扣 --JAVA

 题目和谐数组是指一个数组里元素的最大值和最小值之间的差别 正好是 1 。现在,给你一个整数数组 nums ,请你在所有可能的子序列中找到最长的和谐子序列的长度。数组的子序列是一个由数组派生出来的序列,它可以通过删除一些元素或不删除元素、且不改变其余元素的顺序而得到。解题思路数组本身是无序的,所以需要将数组进行排序或将同一元素的数据收集起来(代码用的Map收集);遍历收集好的数据,查看....

594. 最长和谐子序列 --力扣 --JAVA
文章 2023-11-25 来自:开发者社区

1457. 二叉树中的伪回文路径 --力扣 --JAVA

 题目给你一棵二叉树,每个节点的值为 1 到 9 。我们称二叉树中的一条路径是 「伪回文」的,当它满足:路径经过的所有节点值的排列中,存在一个回文序列。请你返回从根到叶子节点的所有路径中 伪回文 路径的数目。解题思路首先确定方法来判断是否为伪回文,可以通过Map来存储出现过的值,当第二次出现时删除,当Map大小小于等于1时则为伪回文;通过递归遍历每一条从根节点到子节点的路径;在进行左右....

1457. 二叉树中的伪回文路径  --力扣  --JAVA
文章 2023-11-24 来自:开发者社区

108. 将有序数组转换为二叉搜索树 --力扣 --JAVA

 题目给你一个整数数组 nums ,其中元素已经按 升序 排列,请你将其转换为一棵 高度平衡 二叉搜索树。高度平衡 二叉树是一棵满足「每个节点的左右两个子树的高度差的绝对值不超过 1 」的二叉树。解题思路可以采用二分法,每次选数组中间值为根节点创建树,这样可以确保左右子树的高度差的绝对值不超过1;通过递归来逐级生成后续节点;可通过变量设置左右边界,方便后续节点区间的取值;代码展示cla....

108. 将有序数组转换为二叉搜索树 --力扣 --JAVA

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

算法编程

开发者社区在线编程频道官方技术圈。包含算法资源更新,周赛动态,每日一题互动。

+关注