![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
array
HakenⅤ
这个作者很懒,什么都没留下…
展开
-
从排序数组中删除重复项
从排序数组中删除重复项 问题描述:给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。 原题链接:从排序数组中删除重复项 审题 关键字:排序数组、原地删除、O(1) 额外空间 思路 因为是排序数组,所以重复出现的元素一定是连在一起的 用后面的数覆盖前面...原创 2019-09-19 20:05:25 · 128 阅读 · 0 评论 -
买卖股票的最佳时机 II
问题描述 给定一个数组,它的第i个元素是一支给定股票第i天的价格。 设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。 注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。 题目来源:买卖股票的最佳时机 II 审题 关键字:最大利润、完成更多的交易、不能同时参与多笔交易 思路 最大利润 即 在遇到更高的价格卖出股票前...原创 2019-09-19 20:19:31 · 117 阅读 · 0 评论 -
旋转数组
问题描述: 给定一个数组,将数组中的元素向右移动k个位置,其中k是非负数。 说明: 尽可能想出更多的解决方案,至少有三种不同的方法可以解决这个问题。 要求使用空间复杂度为O(1) 的原地算法。 题目来源:旋转数组 审题 关键字:旋转、原地 思路 题目提示使用旋转 旋转:将两端的数互换位置再向内部逼近,从而将数组旋转 将数组下标为n-k到n-1的数做旋转操作 ...原创 2019-09-19 20:34:19 · 93 阅读 · 0 评论 -
存在重复
题目描述 给定一个整数数组,判断是否存在重复元素。 如果任何值在数组中出现至少两次,函数返回 true。如果数组中每个元素都不相同,则返回 false。 题目来源:存在重复 审题 关键字:整数数组、重复元素 思路 重复元素 Set特点:元素无放入顺序,元素不可重复,重复元素会覆盖掉 整数数组 可以进行排序 对整数数组进行排序,然后遍历数组比对当前数与下一个数是否相等 代码 ...原创 2019-09-19 20:58:44 · 129 阅读 · 0 评论 -
只出现一次的数字
问题描述 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 说明: 你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗? 思路 遍历整个数组进行异或操作,由于每个元素均出现两次,只有一个元素只出现一次,其结果必为该元素 代码 class Solution { public int singleNumber(...原创 2019-09-20 10:21:25 · 66 阅读 · 0 评论