自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(4)
  • 问答 (1)
  • 收藏
  • 关注

原创 打家劫舍 II

力扣地址 动态规划: 因为题目说到住户首尾相连,需要考虑的问题是,当偷了第一家,就不能偷最后一家, 因此得出两个偷窃范围 0 到(n - 2),1 到 (n - 1),得出这两个范围的最大值, 然后再比较最大值即为偷窃最高金额 考虑特殊情况,当只有一家时直接返回 当有两家或三家时,获取最大值 超过三家则有如下状态转移方程: class Solution { public: int rob(vector<int>& nums) { int l.

2021-04-16 22:28:00 107

原创 寻找旋转排序数组中的最小值

力扣地址 二分查找: 先设置中间值 mid,查看 nums[mid] < nums[right] 是否成立,如果成立则表明从 mid 到 left 都是顺序的,因此 mid 之后的数都不可能是最小值,因此 right= mid。 当nums[mid] < nums[right] 不成立时,说明最小数在 mid 和 right 的中间,此时 mid 肯定不是最小数,因为所有数字都不相等,因此 left = mid + 1。 通过上述两个条件的夹逼,最终 right 会等于 left,这样.

2021-04-08 22:00:01 124

原创 搜索旋转排序数组 II

力扣地址 二分查找: 由于数组中的值会重复,所以需要考虑二分时,开头中间和结尾的值相等的问题,已经一些边界问题 class Solution { public: bool search(vector<int>& nums, int target) { int len = nums.size(); if (!len) return false; if (1 == len) return nums[0] == target;

2021-04-07 23:16:00 92

原创 笨阶乘

力扣地址 栈: 按照题目要求,乘除加减依次进行,那么我们只需要按照执行次序,定义一个index变量记录执行次序,依次进行以上操作,并且入栈,最后将所有结果全部相加返回即可 class Solution { public: int clumsy(int N) { vector<int> s; s.push_back(N); --N; int index = 0; while (N) {

2021-04-01 23:00:36 101

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除