array(easy) summary

1、其中关于计算数组中两个数字的和(LeetCode1. Two Sum)还是看一个string 中有没有重复,都是用map<int,int>index或者map<char,int>index.将原来的值作为键值,将下标作为值(LeetCode1.Two Sum),或者用index[nums[i]]++进行计数()

for(inti=0;i<nums.size();i++)

{index[nums[i]]=i;}

2、LeetCode26Remove Duplicates from Sorted Array、LeetCode27Remove Duplicates from Sorted Array都是移动问题,此类问题就是添加一个哨兵,然后根据题目要求对于哨兵的位置进行操作。(需要注意的是这里是要替代原有位置,不能仅仅是删除重复)而且不是重复或要求元素时正常移动i,遇到重复或要求元素,对pos进行操作。

3、leetcode35 Search Insert Position 这种插入,查找的题目都是用二分法。

3、leetcode53Maximum Subarray方法一:(动态规划)遍历查找每段的最大sum。如果当前段的sum已经小于0,则重新开启一段。 注意把max设为第一个值。方法二:(分治法)

4、LeetCode66PlusOne 关于数的加减法  都是要进行每一位剩下的数和进位的数不断地向前循环。

5、LeetCode88 Merge Sorted Array采用后项插入

6、LeetCode118Pascal'sTriangle和LeetCode118Pascal's Triangle2都是找规律计算问题,LeetCode118Pascal's Triangle2注意有些声明和初始化是应该在循环内还是在循环外。

7、121.Best Time to Buy and Sell Stock其实是在已经便利过的前面找最小的,这时可以一边遍历,一边更新最小值. 122. Best Time to Buy and Sell Stock 2采用的是取巧计算的方法。

8、167.Two Sum II - Input array is sorted 用的是双指针问题,通过判断来不断地调整指针。

9、169.Majority Element和LeetCode1.Two Sum中的是一个类型的(map计数)。
10、189. Rotate Array数组翻转注意reverse里的start和end.因为在rotate里要使用翻转的开始和结束的位置。

11、217.Contains Duplicate和LeetCode1.Two Sum中的是一个类型的(map计数)。

12、219. Contains Duplicate II  这个题要注意就是index[nums[i]]=i;是记录了重复数字第一次最新的在数组里的位置。当if(index.find(nums[i])!=index.end()&&(i-index[nums[i]])<=k)第二次在发发现,当前位置i和第一次最新的在数组里的位置的差就是他们之间的间隔。

13、283. Move Zeroes 和LeetCode26中的是一个类型的。(哨兵问题)

14、414. Third Maximum Number 两种方法,第一种,三个数,不断更新初始化要用长整型long的最小值,否则当数组中有INT_MIN存在时,程序就不知道该返回INT_MIN还是最大值first 。第二种set里只有三个数不断更新。

时间复杂度是O(nlogn),不符合题目要求,纯粹是拓宽下思路哈,利用了set的自动排序和自动去重复项的特性,很好的解决了问题,对于遍历到的数字,加入set中,重复项就自动去掉了,如果此时set大小大于3个了,那么我们把set的第一个元素去掉,也就是将第四大的数字去掉,那么就可以看出set始终维护的是最大的三个不同的数字,最后遍历结束后,我们看set的大小是否为3,是的话就返回首元素,不是的话就返回尾元素

其实求前n大数  最好的方法是快速排序。

15、448. Find All NumbersDisappeared in an Array 注意数组中元素和下标的对应关系。利用数组中存在的元素的值作为下标,将此下标的元素变为负数,如果元素没有出现,那么他的下标所对应的的数值就不为0,这就是失踪的元素。

16、485. Max Consecutive Ones最大值的迭代问题。

array easy summery相关推荐

  1. LeetCode # Array # Easy # 217. Contains Duplicate

    Given an array of integers, find if the array contains any duplicates. Your function should return t ...

  2. 你面试稳了!通关LeetCode刷题完整攻略,省时又高效

    关注上方"深度学习技术前沿",选择"星标公众号", 资源干货,第一时间送达! 作者:穷码农 来源:https://zhuanlan.zhihu.com/p/10 ...

  3. Leetcode 1

    Array(Easy) 1. 26 Remove Duplicates from Sorted Array 利用快慢指针,back 指针从 0 开始,front 指针从 1 开始,如果 back和 f ...

  4. 前端 | 每天一个 LeetCode

    这篇文章记录我练习的 LeetCode 题目,语言 JavaScript. 完整题目列表 从 2018 年 11 月 11 日起,每天更新一题,顺序从易到难,目前已更新 93 个题. 题目 源码 公众 ...

  5. 堆排序时间复杂度_leetcode刷题(二):排序算法(归并排序,堆排序,桶排序)...

    今天,我们要来讲讲排序问题,这次讲的排序算法主要是归并排序,堆排序和桶排序. 归并排序 归并一词在中文的含义就是"合并,并入"的意思,在数据结构里面就是将两个或者两个以上的有序数组 ...

  6. LEETCODE-刷题个人笔记 Python(1-400)-TAG标签版本

    1. Array (1) 27. Remove Element(Easy) 给定数组nums和值val,在适当位置删除该值的所有实例并返回新长度. 思路: 不需要使用排序,如果等于该值,则将n-1的值 ...

  7. LeetCode 力扣算法题解汇总,All in One

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: https://fuxuemingzhu.cn 关键词:LeetCode,力扣,算法,题解,汇总,解析 把自己刷过的所有题目做一个整理, ...

  8. Leetcode算法题-解法转载

    版权声明:本文为博主原创文章,未经博主允许不得转载.    https://blog.csdn.net/fuxuemingzhu/article/details/85112591 作者: 负雪明烛 i ...

  9. Leetcode题解(超赞!!!)

    我是技术搬运工,好东西当然要和大家分享啦.原文地址 算法思想 二分查找 二分查找思想简单,但是在实现时有一些需要注意的细节: 在计算 mid 时不能使用 mid = (l + h) / 2 这种方式, ...

  10. Leet Code知识点总结 - 594

    LeetCode 594. Longest Harmonious Subsequence 考点 难度 Array Easy 题目 Alice has n candies, where the ith ...

最新文章

  1. python Flask框架如何请求及返回数据——flask详细教程
  2. android插件框架机制的选择,Android插件开发初探——基础篇
  3. HDU4416(后缀自动机)
  4. asp.net mvc处理css和js版本问题
  5. 求知无限,刷新.NET 中国社区
  6. 公开课精华 | 无人驾驶中感知的挑战与尝试
  7. BigDecimal的用法详解(保留两位小数,四舍五入,数字格式化,科学计数法转数字,数字里的逗号处理)
  8. CAN笔记(13) STM32-M4 bxCAN
  9. 7天内新闻前加 new
  10. windows 2003 迁移域控制器到 windows 2008
  11. loic 工具使用指导
  12. SnakeYaml使用
  13. 软考软件设计师下午题目java设计模式(自用)
  14. 常用网络端口用处归纳
  15. unity Audio 基础知识二 Audio Mixer
  16. TeamViewer 如何注册账户?
  17. Codeforces 417 D. Cunning Gena
  18. 物联网之散射通信应用
  19. 2022-2023年控制领域、工程领域、计算机领域、人工智能领域国家重点实验室开放基金申请指南
  20. 【obs】项目构建环境

热门文章

  1. 浅谈傅里叶——6. 采样、频率与一个简易的DFT函数
  2. c语言怎么字体加粗,html 字体加粗
  3. 计算机进入低能耗休眠状态,BIOS电源管理ACPI的D3cold-D3hot
  4. 106短信发送失败的原因
  5. 小学计算机期末考试试题,小学三年级信息技术期末考试试卷
  6. sql 远程过程调用失败
  7. Libero安装最新版本2022.2
  8. 微博php面试,新浪微博php实习生
  9. STM8S003串口printf及帧判断
  10. unrecognized selector sent to instance 0x7fbb51c7c490问题解决方法之一