- 博客(7)
- 收藏
- 关注
原创 80.删除有序数组中的重复项2
方式传递的,这意味着在函数里修改输入数组对于调用者是可见的。是以“引用”方式传递的。删除重复出现的元素,使得出现次数超过两次的元素。// 根据你的函数返回的长度, 它会打印出数组中。// 在函数里修改输入数组对于调用者是可见的。为什么返回数值是整数,但输出的答案是数组呢?不需要考虑数组中超出新长度后面的元素。不需要考虑数组中超出新长度后面的元素。, 并且原数组的前五个元素被修改为。, 并且原数组的前七个元素被修改为。不要使用额外的数组空间,你必须在。,返回删除后数组的新长度。请注意,输入数组是以。
2024-03-27 15:36:37 317 1
原创 26.删除有序数组中的重复项
在遍历过程中,如果当前元素与上一个唯一元素不同,就将其赋值给下一个唯一元素的位置,并移动唯一元素末尾位置的指针。这样,遍历结束后,唯一元素末尾位置的指针所指向的下一个位置就是新数组的长度。考虑到数组是非严格递增的,我们可以使用双指针的方法来原地修改数组。,请你原地删除重复出现的元素,使每个元素只出现一次,并返回删除后数组的新长度。解释:函数应返回新数组的长度为 5,并将原数组的前五个元素修改为 0, 1, 2, 3, 4。解释:函数应返回新数组的长度为 2,并将原数组的前两个元素修改为 1 和 2。
2024-03-26 11:17:20 458 1
原创 88.合并两个有序数组
为了应对这种情况,nums1 的初始长度为 m + n,其中前 m 个元素表示应合并的元素,后 n 个元素为 0 ,应忽略。考虑到两个数组都是非递减顺序排列的,我们可以从后往前遍历,将较大的元素依次放入 nums1 的末尾,这样可以保证合并后的数组仍然是非递减顺序的。给你两个按非递减顺序排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目。请你合并 nums2 到 nums1 中,使合并后的数组同样按非递减顺序排列。
2024-03-26 10:20:42 202 1
原创 125.验证回文串
如果在将所有大写字符转换为小写字符、并移除所有非字母数字字符之后,短语正着读和反着读都一样。则可以认为该短语是一个。解释:在移除非字母数字字符并将大写转换为小写后,得到的字符串是。解释:在移除非字母数字字符并将大写转换为小写后,得到的字符串是。,编写一个函数来判断它是否为回文串,并返回相应的布尔值。解释:在移除非字母数字字符后,得到的字符串是空字符串。空字符串正着反着读都一样,所以是回文串。字母和数字都属于字母数字字符。,这不是一个回文串。
2024-03-25 17:06:57 660
原创 把以前搜的各个网站or个人分享的java学习路线整理一下
这是我的个人体会:学习路线大差不差,所以说大部分的时间最好是用来学习技术上,而不是用来寻找资料或者什么路线什么的。。。而且他们都强调了计算机基础知识的学习(如有侵权请联系我会删除,欢迎随时补充。下面列举出来的都是讲个大概,如果你有兴趣,强烈建议进入对应的网站看完整的作者讲解(详细的推荐对应视频以及作者的建议)。全文除了这两段,下面都是引用。。。
2023-12-03 20:09:53 563 2
原创 算法快速幂1.快速幂概念
位运算是一种对二进制数的操作方法,它可以高效地执行一些常见的数学运算,如乘法、除法和幂运算。base*=base;将11分为8 2 1 都是2的倍数 用2进制处理(2的3次方 2的1次方 2的0次方,对应的是1011)//计算,初始res为1,base为你输入的底数。n的最后一位判断完之后,向右移一位,把刚处理过的n最后一位去掉。这段代码是使用二进制位运算来实现快速幂运算的方法,下面我将用中文来解释位运算的原理。if(n&1)//判断此刻最后一位是否为0,当n为0,res不变。如何快速求2的11次方?
2023-11-04 17:17:20 163 3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人