自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 力扣第五题——最长回文字串

根据题意所求的是最长的回文子串,那么我就从最长的字串开始尝试,看他是不是回文串,如果不是就从字串长度减一中寻找,这样找到的第一个回文串就是最长回文串了。一开始定义left=0,right=s的长度然后每循环一次,right就减一,内层循环中左右指针一次往右移动一个单位,知道right的下标又到s.length说明这个长度的字串没有回文串,结束内层循环返回外层循环,right再减一。这样就像一个方框再从最长的子串开始一个一个尝试。解释:"aba"是s的最长回文字串。解释:"bb"是s的最长回文字串。

2023-03-15 21:22:35 108

原创 力扣第三题——无重复字符的最长字串

这道题用暴力枚举的方法也可以解决,用两层for循环遍历每一个字串找到没有重复的且长度最长的。但是我们也可以用HashMap<Character, Integer>以字符为键,下标为值,依次将字符放到map中,用一个方框框住无重复字符字串。每放一个我都用containsKey方法判断字符是否重复,当这个字符重复但是重复的字符不在方框中的时候就不管他,但当他在方框中的时候,我左边的边界就需要更新,left新的值为这个方框中重复字符的左边一位的下标。输出:1 //a是s的最长字串,长度为1。

2023-03-14 22:01:22 72

原创 力扣第四题——寻找两个正序数组的中位数

为了方便数组合并和排序我选择用ArrayList来存储两个数组的元素,用了两个for循环将两个数组的元素都添加到list中去,用list.sort方法将数组升序排序。这道题目其实并不难,给了两个数组,我的思路就是首先将两个数组合并(注意这里一定不要去重,我的例子跟原题的例子不一样,当初没有想到这一点所以一直通过不了),然后排序,再根据元素个数的奇偶判断中位数。解释:合并数组=[1,2,3,4],中位数(2+3)/ 2=2.5。解释:合并数组=[1,1,1,2],中位数(1+1)/ 2=1。

2023-03-13 23:32:10 106

原创 力扣第二题——两数相加

l1和l2就是两个链表的头一个结点,也叫头指针。就是把两个链表相同位数的值取出来相加,得到的值放到一个新的链表里面。来源:力扣(LeetCode)链接:https://leetcode.cn/problems/add-two-numbers。给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。你可以假设除了数字 0 之外,这两个数都不会以 0 开头。请你将两个数相加,并以相同形式返回一个表示和的链表。

2023-03-12 23:56:10 115

原创 猴子吃桃问题

【代码】猴子吃桃问题。

2023-03-12 00:14:52 39

原创 力扣第一题——两数之和

有了这个思路,我们就可以尝试用HashMap来解决这个问题,利用键值对(k-v),以数值为键,以数组下标为值存储在map中,首先从数组nums[]中拿出一个数num1,求出对应的target-num1,利用map.containKey()方法,查看这个数是否在map中,如果存在,返回对应的下标,如果不存在,那么就将num1和对应的下标也存到map中,让map中的数更加丰富。使用暴力枚举的方法是最容易想到的,首先固定第一个数,然后在遍历后面的数,如果找到有一个数的和等于target,返回这两个数。

2023-03-11 23:48:44 331 1

空空如也

空空如也

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

TA关注的人

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