【leetcode】数组

1. 769. Max Chunks To Make Sorted

思路
遍历数组。维持一个max,表示当前数组应维持的最小的i,如果arr[i]大于max,就更新max为arr[i],然后如果i==max,也就说i已经到达最小要求,就cnt++,且max更新为数组下一个位置的值。
技巧度:B,思维绕脑度:B+
主要是对arr[i], i 和max的关系情况分类的切入点要准。
详情
https://www.jianshu.com/p/82f3c0390b22

2. 714. Best Time to Buy and Sell Stock with Transaction Fee

思路
动态规划,维持两个状态数组:卖出状态和持有状态
技巧度:C,思维绕脑度:C

3. 48. Rotate Image

思路
用i和offset结合,i代表第i行(0<= i <= (n-1)/2), offset是从i开始的偏移。
技巧度:C,思维绕脑度:A-
i和offset的取值范围要想对。做的时候想错了很多次......希望下次做到的时候能更快速准确。

4. 39. Combination Sum

思路
回溯。
技巧度:C,思维绕脑度:C
是回溯算法的初级应用。

5. 729. My Calendar I

思路
Map<int, int><int, int>的含义是<start, end>解决即可
技巧度:C,思维绕脑度:C

6. 873. Length of Longest Fibonacci Subsequence

思路
参考https://www.youtube.com/watch?v=Py3Jj0M1McY
技巧度:B,思维绕脑度:C
主要难点是想到用二维dp来解决问题

7. 870. Advantage Shuffle

思路
用priority_queue<pair<int, int>>解决。使用贪心算法,按数组A从大到小尽可能在数组B中找到匹配的元素即可。就像是“田忌赛马”一样,让A的上等马去应付B的中等马,依次类推,就能有尽可能多的匹配对数。
技巧度:C, 思维绕脑度:C
贪心算法
详情
代码见:https://www.jianshu.com/p/0edd245de973
关于自定义priority_queue的比较,见https://blog.csdn.net/bat67/article/details/77585312

8. 731. My Calendar II

思路
imos

9. Number of Matching Subsequences

思路
map + 二分查找

10. 11. Container With Most Water

贪心双指针

11. 73. Set Matrix Zeroes

https://www.youtube.com/watch?v=T-_ZdgvO-oU

12. Construct Binary Tree from Preorder and Inorder Traversal

思路
确定inorder数组的中间index时,不可使用lower_bound,要遍历查找

13. 209. Minimum Size Subarray Sum

思路
滑动窗口。当窗口右侧伸展到[a, b, c, d, e]时,可以得知:(a + b + c + d + e) > k(a + b + c + d) <= k,所以,以b、c、d、e中任何一个为开头的窗口和,要想大于k,其右端至少要在e处(否则如果在d处,则(b + c + d) < (a + b + c + d) <= k)。

14. 56. Merge Intervals

思路
imos,注意区间为[a,a]时的处理:如果[a,a]包含在别的区间内,就合并。如果是单独出现的,就单独放置该区间。处理方法是,如果在确定起始边界时,发现当前变化数为0,则该区间是[a,a]区间,直接放置即可。

15. 376. Wiggle Subsequence

维持up和down两个变量,记录以上升沿/下降沿为最后一个沿的最小长度

16. 16. 3Sum Closest

固定一个数,则问题降阶为另外两个数用双指针从头尾向中间遍历。问题简化为杨氏矩阵。

17. 31. Next Permutation

https://yq.aliyun.com/articles/863
思路
假设有一个数:
abcd...hi...wxyz
从i到z递减,且h小于i。
我们的任务是找到一个排列比它大,且尽可能小
那么如果要找一个比它大的数,这个数的第一位不同必须在h上。下面用反证法证明:

  1. 如果该位在h以前,也就是abc...一直到h之前,那么这个数一定比 在h位上不同的数要大。
  2. 如果该位在h之后,也就是i...wxyz,那就说明i位之前的数都是一样的,没有交换过。而i...wxzy是递减的,在局部上本来就是数最大的排列,任何交换都无法使它更大。所以也不可能在h之后。

所以该位在h上。那么h要与谁交换呢?这个数肯定要比h大,但又要尽可能小。所以就在h右侧寻找比它大又尽可能小的数。将他们交换。然后剩下的数就从左到右,从小到大排序,就可以得到结果了。
详情
https://www.jianshu.com/p/f97ee5393010

18. 79. Word Search

思路
回溯。我果然还是有丶东西的。

19. 152. Maximum Product Subarray

思路
dp。维护两个变量: max_to_cur和min_to_cur,另外再维护一个max_global变量即可

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,802评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,109评论 2 379
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,683评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,458评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,452评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,505评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,901评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,550评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,763评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,556评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,629评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,330评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,898评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,897评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,140评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,807评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,339评论 2 342

推荐阅读更多精彩内容

  • 专业考题类型管理运行工作负责人一般作业考题内容选项A选项B选项C选项D选项E选项F正确答案 变电单选GYSZ本规程...
    小白兔去钓鱼阅读 8,970评论 0 13
  • 在C语言中,五种基本数据类型存储空间长度的排列顺序是: A)char B)char=int<=float C)ch...
    夏天再来阅读 3,318评论 0 2
  • 1. 关于诊断X线机准直器的作用,错误的是()。 (6.0 分) A. 显示照射野 B. 显示中心线 C. 屏蔽多...
    我们村我最帅阅读 10,241评论 0 5
  • 数组在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来。这些按序排列的同类数据元素的集合称...
    朱森阅读 3,882评论 2 13
  • 工作每周只能休一天,而且工作日基本每天晚上都在加班,深刻怀疑了自己的工作效率问题,所以等到休息的那一天啥都不想做,...
    你好阳光013阅读 142评论 0 0