自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 资源 (2)
  • 收藏
  • 关注

原创 C++ LeetCode 66 加一

给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。最高位数字存放在数组的首位, 数组中每个元素只存储单个数字。你可以假设除了整数 0 之外,这个整数不会以零开头。示例 1:输入: [1,2,3]输出: [1,2,4]解释: 输入数组表示数字 123。示例 2:输入: [4,3,2,1]输出: [4,3,2,2]解释: 输入数组表示数字 4321。思路其实就是求最后一位之前有多少个9,+1后这些位依次置为0,之前不是9的那位加一,如果全是999…那么在最前面还要插入一个

2020-08-19 20:41:53 140

原创 最长子序列和 C++ 动态规划

思路dp[i]表示以第i位为序列尾部的时候,序列和最大值。#include<iostream>#include<string>#include<vector>#include<algorithm>using namespace std;class Solution {public: int maxSubArray(vector<int>& nums) { if (nums.empty())

2020-08-19 19:32:00 265

原创 C++ 二分查找和插入

#include<iostream>#include<string>#include<vector>#include<algorithm>using namespace std;class Solution {public: int searchInsert(vector<int>& nums, int target) { int left = 0, right = nums.size() - 1;

2020-08-19 15:57:05 486

原创 KMP 字符串匹配原理 算法分析 C++代码详细分析

kmp算法理解核心逻辑是避免字符串匹配时的重复运算,比如{“ABABABCABAB”}中查找{“ABABC”},当字符段ABABA和ABABC不匹配时,移动要查找字符串到A处(加粗)处进行下一次匹配,即ABABABCABAB     ABABC而不用在下一个字母B处进行匹配,其实就是利用了字符串ABAB中重复的AB项。前缀和可以用前缀和来表示这个头和尾重复的字符串长度,字符串必须包含首部和尾部:A:0AB:0ABA:1ABAB:2ABA

2020-08-13 15:31:04 265

原创 LeetCode 27 移除元素

给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。示例 1:给定 nums = [3,2,2,3], val = 3,函数应该返回新的长度 2, 并且 nums 中的前两个元素均为 2。你不需要考虑数组中超出新长度后面的元素。示例 2:给定 nums = [0,1,2,2,3,0,4,2]

2020-08-09 21:51:40 70

原创 LeetCode 删除重复项

给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。示例 1:给定数组 nums = [1,1,2],函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。你不需要考虑数组中超出新长度后面的元素。示例 2:给定 nums = [0,0,1,1,1,2,2,3,3,4],函数应该返回新的长度 5, 并且原数组 nums 的

2020-08-09 21:13:12 151

原创 LeetCode 20 有效的括号对

给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。示例 1:输入: “()”输出: true示例 2:输入: “()[]{}”输出: true示例 3:输入: “(]”输出: false思路用map把括号分为两类,左类和右类,相对应的值互为正负,利用堆栈后进先出的特性,匹配到的括号就移出栈顶,最后判断堆栈是否为空,为空说

2020-08-07 21:02:40 185

蓝桥杯 基础+算法训练代码(C语言)

自己写的和网上找的一些代码,都通过了蓝桥杯官网训练库100%。个人觉得多做题,然后掌握C++几个STL容器的用法,拿奖是没有问题的。

2020-11-11

空空如也

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

TA关注的人

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