
java数据结构学习——数组
江弦凤歌
24:研0备战开发~
展开
-
6.数组小结:
已经使用过Python刷题过一遍,现在使用Java刷题,感觉很多是已经有思路了,并且能明白为什么要这样去做,以后复习主要的重点主要是。原创 2024-12-10 11:30:39 · 152 阅读 · 0 评论 -
5.螺旋矩阵II
那么要循环几次呢,如3 * 3的矩阵,当我们走完一圈后,只需要填充中心即可;如5 * 5的矩阵,当我们走完两圈后,只需要填充中心即可…若是基数,那么我们需要填充中心。我们发现中心点的坐标是在对角线上的,且每次循环完,下一次开始的x和y都在靠近中心点,所以我们若是奇数n,其在完成循环结构更新完x和y退出时,其x和y共同组成的就是我们的点坐标==(x,y)==我们需要顺时针地输出,这看上去很简单,且不涉及算法,但是我们需要确定我们的边界条件,倘若我们一会左闭右开,一会左闭右闭,那么我们的程序会非常的混乱。原创 2024-12-10 11:19:11 · 144 阅读 · 0 评论 -
4.长度最小的子数组:
定义一个快慢指针,先让快指针往后移动,直到找到和大于等于 target ,更新len然后让慢指针往前挪动,当慢指针和快指针组成的和小于target时,让快指针继续往后遍历并让慢指针停止,直到快指针和慢指针之间的区间之和大于等于 target,以此往复,直到遍历完数组。原创 2024-12-09 23:04:01 · 204 阅读 · 0 评论 -
3.有序数组的平方
我们发现了一个规律,最大的值只可能出现在开头和结尾,所以我们可以使用双指针法,一个strat指针指向首元素,一个end指针指向尾元素。我们只要比较这两个元素的绝对值,那么我们就得到了最大的值,将其添加到新数组的末尾即可。然后将首(或者尾指针)向前(向后)挪动1位置,直到。由于非递减,所以是有序的,但是由于不是全是正数,存在负数,所以我们不能直接通过比较数字的大小来获取平方后的顺序,那应该怎么办呢?组成的新数组,要求也按。原创 2024-12-09 22:45:44 · 342 阅读 · 0 评论 -
2. 移除元素
设定两个快慢指针,同时移动每次都只移动一个数据单位,当第一次遇到我们要寻找的target时,那么slow会停止一次更新,从而其指向的位置就是我们要更新的位置,只需要将fast指向的元素赋值给slow指向的位置处即可。两层for循环,一层用来查询要删除的数组,另一层循环用于挪动后面的数组。原创 2024-12-07 17:36:58 · 317 阅读 · 0 评论 -
1. 二分查找
【代码】1. 二分查找。原创 2024-12-07 16:56:50 · 288 阅读 · 0 评论