![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
力扣刷题
文章平均质量分 60
sacurua
这个作者很懒,什么都没留下…
展开
-
【力扣】O(1) 时间插入、删除和获取随机元素(C++)
如果是remove方法,则先查询,如果存在的话,则将数组最后一个元素与将删除元素换位置,然后释放map对应元素,数组弹出末尾元素。// 由于 2 是集合中唯一的数字,getRandom 总是返回 2。【总结】起初并没有完全看懂题意,通过在网站上查询解法,然后加上自己补充,将代码诠释出来,如果有更好解法,欢迎在评论下方发表哦。如果是insert方法的话,则先在map中查询,如果没有则加入,加入的方式为用map记录存储的下标,并在数组末尾添加此元素;// 2 已在集合中,所以返回 false。原创 2024-01-30 16:46:35 · 580 阅读 · 1 评论 -
【力扣】跳跃游戏-贪心算法(C++)
【思路】本题主要解题思路为贪心算法,通过对每一个元素进行遍历,来更新从开始到当前遍历下标处,所能到达的最远距离。但该下标的最大跳跃长度是 0 , 所以永远不可能到达最后一个下标。可以先跳 1 步,从下标 0 到达下标 1, 然后再从下标 1 跳 3 步到达最后一个下标。1.先要判断数组长度是否为1,如果为1,根据题意,便直接到达终点,所以直接输出true;2.遇到0时,要进行判断,此处的零是否可到达,如果不可到达,直接输出false;判断你是否能够到达最后一个下标,如果可以,返回。原创 2024-01-22 14:20:04 · 459 阅读 · 1 评论