java面试算法汇总-数组
创始人
2024-05-31 22:51:36
0

数组

[程序一] 两数之和 :给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。

class Solution {public int[] twoSum(int[] nums, int target) {Map map = new HashMap<>();for(int i=0;iif(map.containsKey(target-nums[i])){return new int[]{map.get(target-nums[i]),i};}map.put(nums[i],i);}throw new IllegalArgumentException("no proper answer");}
}

[程序二] 删除有序数组的重复项: 给你一个 升序排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。

由于在某些语言中不能改变数组的长度,所以必须将结果放在数组nums的第一部分。更规范地说,如果在删除重复项之后有 k 个元素,那么 nums 的前 k 个元素应该保存最终结果。

将最终结果插入 nums 的前 k 个位置后返回 k 。

不要使用额外的空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成

一般这种原地修改数组的题多半都考虑用双指针为最优解

class Solution {public int removeDuplicates(int[] nums) {if(nums == null || nums.length ==0) return 0;int p=0,q=1;while(qif(nums[q]!=nums[p]){nums[p+1] = nums[q];p++;}q++;}return p+1;}
}

[程序三] 移除元素:

标签:拷贝覆盖

主要思路是遍历数组 nums,每次取出的数字变量为 num,同时设置一个下标 ans
在遍历过程中如果出现数字与需要移除的值不相同时,则进行拷贝覆盖 nums[ans] = num,ans 自增 1
如果相同的时候,则跳过该数字不进行拷贝覆盖,最后 ans 即为新的数组长度
这种思路在移除元素较多时更适合使用,最极端的情况是全部元素都需要移除,遍历一遍结束即可
时间复杂度:O(n),空间复杂度:O(1)

class Solution {public int removeElement(int[] nums, int val) {int start = 0;for(int num:nums){if(num!=val){nums[start] = num;start++;}}return start;}
}

相关内容

热门资讯

向你介绍我400字作文四年级... 向你介绍我400字作文四年级作文 篇一我叫小明,是一个四年级的学生。今天我要向你介绍一下我自己。首先...
四年级上册第六单元作文记一次... 四年级上册第六单元作文记一次游戏 篇一我最喜欢的游戏是“捉迷藏”。这个游戏非常有趣,不仅能锻炼我们的...
低头族作文四年级【通用6篇】 低头族作文四年级 篇一低头族的危害如今,低头族成为了一个非常流行的词汇。低头族指的是那些长时间低头看...
四年级上册作文新学期新鲜事(... 四年级上册作文新学期新鲜事 篇一新学期开始了,我迫不及待地走进了教室,发现自己的座位旁边多了一个新同...
博饼四年级作文【最新3篇】 博饼四年级作文 篇一我的博饼经历今天是中秋节,我参加了学校举办的博饼活动。这是我第一次参加博饼,我非...
四年级作文小河的自述【优秀6... 四年级作文小河的自述 篇一我是一条小河,我从山上的泉源处开始,蜿蜒流淌过一个美丽的村庄。我见证了这里...
公园四年级作文【精选6篇】 公园四年级作文 篇一:我的公园之旅今天,我和爸爸妈妈一起去了附近的公园。公园里绿树成荫,花香四溢,充...
校园的春天四年级作文400字... 校园的春天四年级作文400字 篇一春天是一个充满生机和希望的季节,而校园的春天更是美丽而多彩的。每年...
我和神笔马良过一天四年级作文... 我和神笔马良过一天四年级作文 篇一在一个晴朗的周末早晨,我和神笔马良一起度过了一个奇幻的一天。早上醒...
远离危险,珍爱生命作文【通用... 远离危险,珍爱生命作文 篇一近年来,随着社会的发展和人们生活水平的提高,人们对生命的重视程度越来越高...
游崇武古城四年级作文450字... 游崇武古城四年级作文450字 篇一游崇武古城我最近去了一座古城,叫做崇武古城。这座古城位于福建省漳州...
夏天作文400字四年级(实用... 夏天作文400字四年级 篇一夏天的一天夏天是我最喜欢的季节之一。夏天的早晨总是阳光明媚,鸟儿欢快地唱...
四年级写做叶画的作文(最新3... 四年级写做叶画的作文 篇一我喜欢画画,而且我最喜欢画的是叶子。叶子有各种各样的形状和颜色,所以每一片...
四年级作文三亚蜈支洲15篇【... 四年级作文三亚蜈支洲15篇 篇一:蜈支洲的美景蜈支洲是我国的一个美丽的海岛,位于海南省三亚市附近。我...
小学四年级周记【优选6篇】 小学四年级周记 篇一今天天气晴朗,我和同学们一起来到学校。早上的第一节课是数学课,老师教我们学习了一...
我的朋友四年级学生作文【优选... 我的朋友四年级学生作文 篇一我的朋友小明我有一个好朋友,他叫小明。小明是一个四年级的学生,他是个聪明...
开学第一天作文四年级300字... 篇一:开学第一天作文四年级300字16篇第一篇内容:开学第一天的新鲜感今天是开学的第一天,我早早地起...
我的妈妈四年级作文(实用6篇... 我的妈妈四年级作文 篇一:我的妈妈是最好的妈妈我的妈妈是一位非常了不起的妈妈。她是我的榜样和朋友。她...
金仓湖四年级作文(最新6篇) 金仓湖四年级作文 篇一秋天的金仓湖金仓湖是我家附近的一个美丽湖泊,它四季如春,我最喜欢的季节是秋天。...
我喜欢春天四年级优秀作文【最... 我喜欢春天四年级优秀作文 篇一春天是一年中最美丽的季节,我非常喜欢春天。春天来了,大地变得生机勃勃,...