自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 收藏
  • 关注

原创 跳跃游戏 II (贪心, 动态规划)

向前跳转的最大长度。生成的测试用例可以到达。这个变量记录了当前跳跃的范围的最远位置。达到了之前记录的跳跃范围的最远位置。,说明需要进行下一次跳跃了。处,你可以跳转到任意。

2024-04-22 21:58:57 862 1

原创 三角形最小路径和-java

动态规划

2024-04-09 23:40:59 1065

原创 不同的子序列-java

动态规划

2024-04-09 00:17:22 1035

原创 柱状图中最大的矩形-java

2024-04-07 22:05:54 1059

原创 不同路径 II-java

【代码】不同路径 II-java。

2024-04-06 07:30:00 1036

原创 不同路径- java

动态规划, 滚动数组

2024-04-05 07:30:00 2049

原创 组合总和 II-java

candidatestargetcandidatestargetcandidates注意:解集不能包含重复的组合。

2024-04-04 21:33:07 1280

原创 组合总和-java

candidatestargetcandidatestargetcandidatestarget150在搜索过程中不断尝试可能的解,并在不满足条件时进行回退。

2024-04-02 23:57:44 637

原创 长度最小的子数组-java

分别作为左指针, 右指针, 记录最短连续子数组的长度的值.

2024-04-01 03:55:08 1232

原创 最小覆盖子串-java

滑动窗口

2024-04-01 02:28:05 717

原创 前端第一天练习

搭建前端环境, 初始化前端项目, 使用git提交代码

2024-03-31 06:00:00 526 1

原创 最小覆盖子串-java

滑动窗口算法

2024-03-31 01:18:56 686 1

原创 继承 extends

关于成员变量, 成员方法, 构造方法,继承的概述

2024-03-30 12:30:08 863

原创 跳跃游戏-java

给你一个非负整数数组 ,你最初位于数组的 第一个下标 。数组中的每个元素代表你在该位置可以跳跃的最大长度判断你是否能够到达最后一个下标,如果可以,返回 ;否则,返回 。 这个问题可以使用贪心算法来解决。贪心算法的思想是每一步都选择当前最优的解决方案,从而希望最终能够得到全局最优解。具体来说,我们可以从数组的第一个位置开始,依次遍历数组中的每个元素,同时记录当前能够到达的最远位置。在遍历过程中,如果当前位置超过了最远位置,说明无法继续前进,即无法到达最后一个下标,返回 false。否则,更新最远位置为当

2024-03-29 22:14:49 1111 1

原创 有效的数独-java

9 x 91-91-91-93x3'.'使用 `++` 操作符自增,同时检查是否出现重复数字,如果出现重复数字,则直接返回 `false`,表示该数独不合法。

2024-03-28 23:51:47 1231

原创 搜索插入位置-java

O(log n)通过比较目标元素与数组中间位置的元素的大小关系,从而缩小查找范围。

2024-03-27 23:11:10 777

原创 电话号码的字母组合

通过不断地动态更新结果列表,逐步构建所有可能的字母组合。这种方法避免了使用递归,而是利用迭代和动态更新来解决问题,提高了效率和可控性。​​​​​​​以下是完整代码

2024-03-26 23:27:43 1014

原创 最接近的三数之和-java

题目描述: ( 力扣题库 : 16 )nnumstargetnumstarget这段代码的解题思想是首先对给定的整数数组进行,以便更好地利用有序数组的性质。然后,通过遍历数组并固定一个数作为三个数中的第一个数,使用双指针技术来找到剩下两个数,使它们的和最接近目标值。在双指针的过程中,我们不断计算当前三个数的和,并根据与目标值的差值来更新最接近目标值的和。通过移动左指针和右指针,我们可以调整剩下两个数的选择,以便逐步逼近目标值。最终,算法会返回找到的最接近目标值的三个数的和。

2024-03-25 23:13:11 988 1

原创 github上面的项目怎么运行

1. 找releases一般打包好了的软件都会在这里, 下面以开源软件。

2024-03-25 00:33:47 6241 1

原创 三数之和-java

在这种情况下,使用Map并不能提高算法的时间复杂度,因为我们仍然需要遍历数组来生成所有可能的三元组,而使用Map只是为了存储这些结果。: 对于三数之和问题,通常存在多组解,而且这些解可能包含相同的元素。在三数之和问题中,排序后可以避免重复计算相同的元素组合。如果和等于目标值,则找到一组解,将这三个元素加入结果集。如果和小于目标值,将左指针右移。使用Map来存储结果会增加额外的空间复杂度,尤其是在需要处理大量数据时,会占用大量内存空间。使用Map存储结果时,需要额外的逻辑来处理重复的解,增加了代码的复杂性。

2024-03-24 22:03:51 867 1

原创 回文数-java

x,如果x是一个回文整数,返回true;否则,返回false。回文数121123整数反转--一种是利用字符串, 使用双指针法, 快速判断该数是否为回文数(但这种方法会占用一些额外的空间),二是整数的后半部分进行反转,然后与整数的前半部分进行比较。注意要分奇偶两个指针逐个比较字符,以判断是否满足某种条件。

2024-03-23 23:33:57 2508 1

原创 盛最多水的容器-java

给定一个长度为 的整数数组 。有 条垂线,第 条线的两个端点是 和 。 找出其中的两条线,使得它们与 轴共同构成的容器可以容纳最多的水。 返回容器可以储存的最大水量。 说明:你不能倾斜容器。当使用双指针法解决这个问题时,我们可以初始化左指针为数组的起始位置,右指针为数组的结束位置。然后,我们计算当前两个指针所形成的容器的容量,并记录当前的最大容量值。接下来,我们移动指针的规则是:由于容器的容量取决于较短的那根柱子的高度,所以我们移动较短柱子的指针,以期望找到更高的柱子,

2024-03-22 16:23:58 1428 1

原创 字符串转换整数(atoi)-java

32 位有符号整数atoi函数如果没有读入数字,则整数为0。必要时更改符号(从步骤 2 开始)。小于−231的整数应该被固定为−231,大于231 − 1的整数应该被固定为231 − 1。' '-42整体思路还是很简单的, 将字符串的字符提取出来转换成整数, 然后依据题目要求, 注意一下细节就行了.

2024-03-22 00:35:14 911 1

原创 整数反转-java

如果在转换整数时发生了数字格式异常,即整数溢出的情况,返回0作为溢出处理结果。如果输入整数是负数,这一行将其转换为正数,以便后面处理。: 这是一个循环,用来逐位获取输入整数的数字并将其添加到。减去末尾数字 x % 10 就等于更新前的整数。当传入的数字为负数时,while循环不会执行.这一行检查输入整数是否为负数,并将结果存储在。除以10,以便在下一次迭代中处理下一个数字。以下是补充完整的while 循环的代码。溢出, 存储的数据会丢失, 此时。, 不是我们所预期的结果.逆序排列后的数字转换为整数。

2024-03-20 22:44:27 1343 2

原创 Z 字形变换-java

简化计算行数的逻辑:在给定代码中,计算行数的逻辑可以简化。当行数为1或大于等于字符串长度时,直接返回原始字符串。输入:s = "PAYPALISHIRING", numRows = 3。在没有多线程安全需求的情况下,建议使用StringBuilder。(代码运行时间从8ms 减少到了 4ms)输出:"PAHNAPLSIIGYIR"每个元素代表 Z 字形中的一行。由英文字母(小写和大写)、大于输入字符串的长度。

2024-03-20 00:38:57 1324 1

原创 最长回文子串-java

示例 :输入:s = "babad"输出:"bab"解释:"aba" 同样是符合题意的答案。提示:首先定义一个方法isPalindrome(名称随意), 用来判断某个字符串是否是回文字符串,接着再一一例举出每个子字符串,利用该方法isPalindrome,找出回文字符串,然后进一步找出最长度的回文字符串,该方法遍历出所有的子字符串,时间复杂度为o(n^2), 判断是否为回文字符串,时间复杂度为o(n).所以, 总时间复杂度为o(n^3). 2.定义两个变量,begin(子字符串的起始位置

2024-03-19 00:14:23 1443 1

原创 无重复字符的最长子串

它需要检查所有可能的子串,然后对每个子串检查是否有重复字符。这会导致时间复杂度为 O(n^3),其中 n 是输入字符串的长度。因此,暴力枚举法不太适合解决这个问题,而使用。首先,我想到的是暴力枚举法,但暴力枚举法在这个问题上的时间复杂度较高,因为。,请你找出其中不含有重复字符的。,其中 n 为输入字符串的长度。因为无重复字符的最长子串是。时间复杂度为 O(n),所以其长度为 3。

2024-03-17 21:46:57 955 1

原创 两数之和-java

扩容。

2024-03-16 22:46:10 1392 1

原创 github访问教程

另外,如果你实在迫不及待,想要马上打开github,请直接看第二段1.watt Toolkit(原名steam++)下载及其使用方式。

2024-03-13 21:44:25 4746

原创 深入理解Java中的String类型

这意味着当你创建一个String类型的变量并赋予它一个字符串值时,这个变量实际上存储的是字符串的。s1, s2, s3的实际内容相同,但s1,s2共用串池中的同一个地址, 而s3相当于在堆内存中开辟了一个空间.因此s3 与s1.s2的地址不相同.串池的存在主要是为了节省内存空间和提高性能,特别是对于不可变的字符串(如Java中的String类型)来说,串池起到了重要的作用。串池(String Pool)是一种存储字符串常量的特殊区域,它存在于内存中,被用来存储经常被使用的字符串,以便在需要时可以。

2024-03-09 21:24:25 1404

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除