
数组
数据结构数组
Java编程小辉
两年半Java开发经验,24届毕业生
GitHub:https://github.com/qiuquanhui 正在求职找工作中
展开
-
螺旋矩阵(算法题)
我是小辉,24 届毕业生。当下是找工作ing,欢迎关注,持续分享。终点:**循环不变量,**每一次循环遵循左闭右开的原则。所有元素,且元素按顺时针顺序螺旋排列的。原创 2024-05-28 12:50:32 · 292 阅读 · 0 评论 -
有序数组的平方
时 result[index–] = nums[right] * nums[right];时 result[index–] = nums[left] * nums[left];因为有负数的存在,所以最大值一定是在最左边或者最右边,一定不在中间。我是小辉,24 届毕业生。当下是找工作ing,欢迎关注,持续分享。逐一的找出最大值,插入到result的最右边。定义最左边的指针与最右边的指针,逐一找出最大值。依旧是双指针,逐一找出最大值。初始化一个result数组。组成的新数组,要求也按。原创 2024-05-28 12:47:59 · 403 阅读 · 0 评论 -
移除元素(算法题)
示例 1: 给定 nums = [3,2,2,3], val = 3, 函数应该返回新的长度 2, 并且 nums 中的前两个元素均为 2。你不需要考虑数组中超出新长度后面的元素。快慢指针,慢指针对应着返回的结果,快指针不断的向前寻找正确的值。正确的值就是不等于val的,说起来比较绕口,我们来看看代码。给你一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,并返回移除后数组的新长度。元素的顺序可以改变。看代码中,快指针一步一步的向前搜索,慢指针用于锁定正确的值。原创 2024-05-27 19:41:43 · 372 阅读 · 0 评论 -
长度最长的子数组
我是小辉,24 届毕业生。当下是找工作ing,欢迎关注,持续分享。,并返回其长度**。**如果不存在符合条件的子数组,返回。依旧是双指针,此次我们也可以称为滑动窗口。找出该数组中满足其总和大于等于。个正整数的数组和一个正整数。//滑动,左指针向前。原创 2024-05-27 19:38:16 · 443 阅读 · 0 评论 -
二分查找(经典)
使用二分查找法,要注意循环不变量,当 right = nums.length - 1 时,一开始的范围为左闭右闭[left,right],那么你在循环的条件为while(left <= right)。当 number [middle] > target 时 right = middle - 1;遵循上方的左闭右闭原则。我是小辉,24 届毕业生。当下是找工作ing,欢迎关注,持续分享。因为left = right 是有意义的。第一从一个升序的整数数组中,找到目标值,,如果目标值存在返回下标,否则返回。原创 2024-05-26 14:16:50 · 452 阅读 · 0 评论 -
数组的理论知识
因为数组的内存空间是固定的,会造成内存不足或浪费的情况。而ArrayList是动态数组,它的大小会随着数组存储的元素大小而变化而且ArrayList还可以存储对象。,O(n),因为数组只可以覆盖,不可直接修改,比如我们删除 arr[1],那么之后的元素逐一的往前移动,此时 arr[1] = J,arr[2] = E。在Java中,数组我的经常使用的是动态数组ArrayList用于存储相同对象类型的数据。为什么有数组了,还要有ArrayList这种动态数组呢?数组的查询效率是比较快的,达到O(1)。原创 2024-05-26 14:15:54 · 347 阅读 · 0 评论