自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(35)
  • 资源 (3)
  • 收藏
  • 关注

原创 leetcode.239. 滑动窗口最大值

滑动窗口最大值给你一个整数数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。返回 滑动窗口中的最大值 。示例 1:输入:nums = [1,3,-1,-3,5,3,6,7], k = 3输出:[3,3,5,5,6,7]解释:滑动窗口的位置最大值[1 3 -1] -3 5 3 6 731 [3 -1 -3] 5 3 6 731 3 [-1.

2022-03-08 19:02:49 127

原创 leetcode.232. 用栈实现队列

用栈实现队列请你仅使用两个栈实现先入先出队列。队列应当支持一般队列支持的所有操作(push、pop、peek、empty):实现 MyQueue 类:void push(int x) 将元素 x 推到队列的末尾int pop() 从队列的开头移除并返回元素int peek() 返回队列开头的元素boolean empty() 如果队列为空,返回 true ;否则,返回 false说明:你 只能 使用标准的栈操作 —— 也就是只有 push to top, peek/pop from.

2022-03-03 10:37:40 122

原创 leetcode.28. 实现 strStr()

实现 strStr() 函数。给你两个字符串 haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串出现的第一个位置(下标从 0 开始)。如果不存在,则返回 -1 。说明:当 needle 是空字符串时,我们应当返回什么值呢?这是一个在面试中很好的问题。对于本题而言,当 needle 是空字符串时我们应当返回 0 。这与 C 语言的 strstr() 以及 Java 的 indexOf() 定义相符。示例 1:输入:haystack = “he.

2022-03-02 19:54:25 109

原创 leetcode.151. 翻转字符串里的单词

翻转字符串里的单词给你一个字符串 s ,逐个翻转字符串中的所有 单词 。单词是由非空格字符组成的字符串。s 中使用至少一个空格将字符串中 单词分隔开。请你返回一个翻转 s 中单词顺序并用单个空格相连的字符串。说明:输入字符串 s 可以在前面、后面或者单词间包含多余的空格。翻转后单词间应当仅用一个空格分隔。翻转后的字符串中不应包含额外的空格。示例 1:输入:s = “the sky is blue”输出:“blue is sky the”示例 2:输入:s = " hell.

2022-02-26 20:46:01 108

原创 leetcode.541.反转字符串 II

反转字符串 II给定一个字符串 s 和一个整数 k,从字符串开头算起,每计数至 2k 个字符,就反转这 2k 字符中的前 k 个字符。如果剩余字符少于 k 个,则将剩余字符全部反转。如果剩余字符小于 2k 但大于或等于 k 个,则反转前 k 个字符,其余字符保持原样。示例 1:输入:s = “abcdefg”, k = 2输出:“bacdfeg”示例 2:输入:s = “abcd”, k = 2输出:“bacd”题意理解:遍历字符串,每遍历2K个字符就将前K个字符反序。.

2022-02-26 20:06:04 7519

原创 leetcode.349. 两个数组的交集

两个数组的交集给定两个数组 nums1 和 nums2 ,返回 它们的交集 。输出结果中的每个元素一定是 唯一 的。我们可以 不考虑输出结果的顺序 。示例 1:输入:nums1 = [1,2,2,1], nums2 = [2,2]输出:[2]示例 2:输入:nums1 = [4,9,5], nums2 = [9,4,9,8,4]输出:[9,4]解释:[4,9] 也是可通过的方法一:对于python可以利用set的性质和函数快速实现class Solution: def.

2022-02-22 10:59:58 800

原创 leetode.242. 有效的字母异位词

有效的字母异位词给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。注意:若 s 和 t 中每个字符出现的次数都相同,则称 s 和 t 互为字母异位词。示例 1:输入: s = “anagram”, t = “nagaram”输出: true示例 2:输入: s = “rat”, t = “car”输出: false提示:1 <= s.length, t.length <= 5 * 104s 和 t 仅包含小写字母进阶: 如果输入字符串包含.

2022-02-22 10:29:05 520

原创 leetcode 142. 环形链表 II

环形链表 II给定一个链表的头节点 head ,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。如果 pos 是 -1,则在该链表中没有环。注意:pos 不作为参数进行传递,仅仅是为了标识链表的实际情况。不允许修改 链表。示例 1:输入:head = [3,2,0,-4], pos = 1.

2022-02-20 21:08:44 111

原创 leetcode 206. 反转链表

反转链表给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。示例 1:输入:head = [1,2,3,4,5]输出:[5,4,3,2,1]示例 2:输入:head = [1,2]输出:[2,1]示例 3:输入:head = []输出:[]提示:链表中节点的数目范围是 [0, 5000]-5000 <= Node.val <= 5000进阶:链表可以选用迭代或递归方式完成反转。你能否用两种方法解决这道题?方法一:迭代(双指针)思路.

2022-02-20 20:16:52 280

原创 707. 设计链表

设计链表设计链表的实现。您可以选择使用单链表或双链表。单链表中的节点应该具有两个属性:val 和 next。val 是当前节点的值,next 是指向下一个节点的指针/引用。如果要使用双向链表,则还需要一个属性 prev 以指示链表中的上一个节点。假设链表中的所有节点都是 0-index 的。在链表类中实现这些功能:get(index):获取链表中第 index 个节点的值。如果索引无效,则返回-1。addAtHead(val):在链表的第一个元素之前添加一个值为 val 的节点。插入后,新节点.

2022-02-17 18:15:02 97

原创 203. Remove Linked List Elements(简单)

203. Remove Linked List Elements(简单)Given the head of a linked list and an integer val, remove all the nodes of the linked list that has Node.val == val, and return the new head.Example 1:Input: head = [1,2,6,3,4,5,6], val = 6Output: [1,2,3,4,5]Exam

2022-02-11 19:44:01 885

原创 二叉树遍历-递归和迭代模板

二叉树前序、中序、后续遍历的迭代和递归,一个模板一网打尽递归前序遍历class Solution {public: vector<int> preorderTraversal(TreeNode* root) { vector<int> pre_res; preorder(root,pre_res); return pre_res; } void preorder(TreeNode* root

2021-08-15 12:50:56 90

原创 leetcode-19-删除链表的倒数第 N 个结点(中等)

19. 删除链表的倒数第 N 个结点(中等)给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。**进阶:**你能尝试使用一趟扫描实现吗?示例 1:输入:head = [1,2,3,4,5], n = 2输出:[1,2,3,5]示例 2:输入:head = [1], n = 1输出:[]示例 3:输入:head = [1,2], n = 1输出:[1]思路:设置一个哑节点,它的 next 指针指向链表的头节点。这样,就不需要对头节点进行特殊的判断了。例如,

2021-07-20 16:44:35 90

原创 leetcode-18-四数之和(中等)

18. 四数之和(中等)给定一个包含 n 个整数的数组 nums 和一个目标值 target,判断 nums 中是否存在四个元素 a,b,c 和 d ,使得 a + b + c + d 的值与 target 相等?找出所有满足条件且不重复的四元组。**注意:**答案中不可以包含重复的四元组。示例 1:输入:nums = [1,0,-1,0,-2,2], target = 0输出:[[-2,-1,1,2],[-2,0,0,2],[-1,0,0,1]]示例 2:输入:nums = [], tar

2021-07-19 18:51:37 124

原创 leetcode-78-子集(中等)

78. 子集(中等)给你一个整数数组 nums ,数组中的元素互不相同 。返回该数组所有可能的子集(幂集)。解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。示例 1:输入:nums = [1,2,3]输出:[[],[1],[2],[1,2],[3],[1,3],[2,3],[1,2,3]]示例 2:输入:nums = [0]输出:[[],[0]]思路:位运算回溯法迭代跟据每个元素在或者不在两种状态去区分1、C++ 位运算nums中包含n个元素,共有2n2^n2

2021-07-18 23:55:14 105

原创 leetcode-17-电话号码的字母组合(中等)

17. 电话号码的字母组合(中等)给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。示例 1:输入:digits = "23"输出:["ad","ae","af","bd","be","bf","cd","ce","cf"]示例 2:输入:digits = ""输出:[]示例 3:输入:digits = "2"输出:["a","b","c"]思路:递归:每次增

2021-07-18 23:54:50 99

原创 leetcode-16-最接近的三数之和(中等)

16. 最接近的三数之和(中等)给定一个包括 n 个整数的数组 nums 和 一个目标值 target。找出 nums 中的三个整数,使得它们的和与 target 最接近。返回这三个数的和。假定每组输入只存在唯一答案。示例:输入:nums = [-1,2,1,-4], target = 1输出:2解释:与 target 最接近的和是 2 (-1 + 2 + 1 = 2) 。思路:排序+双指针借鉴15题中的双指针思路,本题中只需要确定一个最优的答案,然后将其返回即可。因此,本题不需要排除重复答

2021-07-17 23:21:27 150

原创 leetcode-15-三数之和(中等)

15. 三数之和(中等)给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 *a,b,c ,*使得 a + b + c = 0 ?请你找出所有和为 0 且不重复的三元组。**注意:**答案中不可以包含重复的三元组。示例 1:输入:nums = [-1,0,1,2,-1,-4]输出:[[-1,-1,2],[-1,0,1]]示例 2:输入:nums = []输出:[]示例 3:输入:nums = [0]输出:[]思路:排序+双指针排序: 先将给定 n

2021-07-17 23:20:11 178

原创 leetcode-14-最长公共前缀(简单)

14 最长公共前缀(简单)编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 ""。示例 1:输入:strs = ["flower","flow","flight"]输出:"fl"示例 2:输入:strs = ["dog","racecar","car"]输出:""解释:输入不存在公共前缀。当输入为空时,不存在strs[0],因此,输入为空时需单独讨论最长公共前缀长度不大于strs中最短的字符串长度(1)C++class Solution {

2021-07-17 23:19:06 126

原创 leetcode-13-罗马数字转整数(简单)

13. 罗马数字转整数(简单)罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。字符 数值I 1V 5X 10L 50C 100D 500M 1000例如, 罗马数字 2 写做 II ,即为两个并列的 1。12 写做 XII ,即为 X + II 。 27 写做 XXVII, 即为 XX

2021-07-17 23:18:06 128

原创 leetcode-12-整数转罗马数字(中等)

12. 整数转罗马数字(中等)罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。字符 数值I 1V 5X 10L 50C 100D 500M 1000例如, 罗马数字 2 写做 II ,即为两个并列的 1。12 写做 XII ,即为 X + II 。 27 写做 XXVII, 即为 XX

2021-07-17 23:16:34 83

原创 leetcode-11- 盛最多水的容器(中等)

11. 盛最多水的容器(中等)给你 n 个非负整数 a1,a2,...,a``n,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0) 。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。**说明:**你不能倾斜容器。示例 1:输入:[1,8,6,2,5,4,8,3,7]输出:49 解释:图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。在此情况下,容器能够容纳水(表示为蓝色部分)的

2021-07-17 23:13:52 96

原创 leetcode-9-回文数(简单)

9. 回文数(简单)给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121 是回文,而 123 不是。**进阶:**你能不将整数转为字符串来解决这个问题吗?示例 1:输入:x = 121输出:true示例 2:输入:x = -121输出:false解释:从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。思路:负数不是回文数判断正数是否

2021-07-17 23:11:53 97

原创 leetcode-8-字符串转换整数 (atoi)(中等)

8. 字符串转换整数 (atoi)(中等)请你来实现一个 myAtoi(string s) 函数,使其能将字符串转换成一个 32 位有符号整数(类似 C/C++ 中的 atoi 函数)。函数 myAtoi(string s) 的算法如下:读入字符串并丢弃无用的前导空格检查下一个字符(假设还未到字符末尾)为正还是负号,读取该字符(如果有)。 确定最终结果是负数还是正数。 如果两者都不存在,则假定结果为正。读入下一个字符,直到到达下一个非数字字符或到达输入的结尾。字符串的其余部分将被忽略。将前面步

2021-07-17 23:10:43 47

原创 leetcode-7-整数反转

7. 整数反转(简单)给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] ,就返回 0。假设环境不允许存储 64 位整数(有符号或无符号)。示例 1:输入:x = 123输出:321示例 2:输入:x = -123输出:-321示例 3:输入:x = 120输出:21思路:将x转化为string型,然后将正负号外的其他字符反向排列,在转化为int型,然后判断阈值区间,最

2021-07-17 23:09:13 113

原创 leetcode-6- Z 字形变换(中等)

6. Z 字形变换(中等)将一个给定字符串 s 根据给定的行数 numRows ,以从上往下、从左到右进行 Z 字形排列。比如输入字符串为 "PAYPALISHIRING" 行数为 3 时,排列如下:P A H NA P L S I I GY I R之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:"PAHNAPLSIIGYIR"。请你实现这个将字符串进行指定行数变换的函数:string convert(string s, int numRows);示

2021-07-17 23:08:09 74

原创 leetcode 10. 正则表达式匹配(困难)

10. 正则表达式匹配(困难)给你一个字符串 s 和一个字符规律 p,请你来实现一个支持 '.' 和 '*' 的正则表达式匹配。'.' 匹配任意单个字符'*' 匹配零个或多个前面的那一个元素所谓匹配,是要涵盖 整个 字符串 s的,而不是部分字符串。示例 1:输入:s = "aa" p = "a"输出:false解释:"a" 无法匹配 "aa" 整个字符串。示例 2:输入:s = "aa" p = "a*"输出:true解释:因为 '*' 代表可以匹配零个或多个前面的那一个元素,

2021-07-11 23:20:29 222 3

原创 leetcode 714 买卖股票的最佳时机含手续费-动态规划(中等)

714 买卖股票的最佳时机含手续费-动态规划(中等)给定一个整数数组 prices,其中第 i 个元素代表了第 i 天的股票价格 ;非负整数 fee 代表了交易股票的手续费用。你可以无限次地完成交易,但是你每笔交易都需要付手续费。如果你已经购买了一个股票,在卖出它之前你就不能再继续购买股票了。返回获得利润的最大值。注意:这里的一笔交易指买入持有并卖出股票的整个过程,每笔交易你只需要为支付一次手续费。示例:输入: prices = [1, 3, 2, 8, 4, 9], fee = 2输出: 8

2021-06-30 22:58:47 176 2

原创 leetcode 5题最长回文子字符串(中等)

5 最长回文子字符串(中等)给你一个字符串 s,找到 s 中最长的回文子串。输入:s = "babad"输出:"bab"解释:"aba" 同样是符合题意的答案。思路:当输入字符串为空时,返回空字符串;因为当字符串中没有回文时返回第一个字符,所以初始化res= s[0]。(C++中s[0]为char型字符,所以需采用res = s.substr(0,1))。然后利用指针i遍历字符串,然后获得以i或i、i+1为中心的回文字符串,判断所获得的字符串与res的长度,若更长则更新res。奇数长度和偶数长度

2021-06-30 22:57:32 167

原创 leetcode 4 寻找两个正序数组的中位数(困难)

4 寻找两个正序数组的中位数(困难)给定两个大小分别为 m 和 n 的正序(从小到大)数组 nums1 和 nums2。请你找出并返回这两个正序数组的 中位数 。示例:输入:nums1 = [1,2], nums2 = [3,4]输出:2.50000解释:合并数组 = [1,2,3,4] ,中位数 (2 + 3) / 2 = 2.5解题思路:给定两个有序数组,要求找到两个有序数组的中位数,最直观的思路有以下两种:使用归并的方式,合并两个有序数组,得到一个大的有序数组。大的有序数组的中间

2021-06-30 22:56:40 88

原创 leetcode 3题 无重复字符的最长字串(中等)

3. 无重复字符的最长字串(中等)给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。示例输入: s = "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。1、C++利用i,j遍历字符串,i,j分别表示无重复字符串的首尾下标。book记录所遍历的无重字符串中的那些字符存在。 i,j均从0开始,当s[j]与字符串s[i,j]中的某一字符s[k]相同时,记录此时的子字符串长度,然后将i++至k+1,然后将原i~k-1的字符标记置零。利

2021-06-30 22:55:46 76

原创 leetcode第二题-两数相加

2. 两数相加(中)给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0 开头。例子:输入:l1 = [2,4,3], l2 = [5,6,4]输出:[7,0,8]解释:342 + 465 = 807.1、C++:class Solution {public: ListNode* addTwoNumbers(Lis

2021-06-30 20:01:06 69

原创 leetcode第一题两数之和

1. 两数之和(简单)题目:给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值的那两个整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。示例 1:输入:nums = [2,7,11,15], target = 9输出:[0,1]解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。提示:2 <= nums.length <=

2021-06-30 20:00:02 63

原创 2020-2021下学期-科大计算机应用数学考题回忆

2021上科大计算机应用数学考题回忆一、填空(一题4分):XY独立,Var(X)=6、Var(Y)=3 ,求Var(3X-2Y)=____。判断:概率为0的事件一定不可能发生 ,logit函数的取值范围为【-∞,+∞】。100个独立工作的部件(工作的概率0.9)组成一个系统,求系统中至少有85个部件工作的概率____。双胞胎两个男孩/女孩的概率为a/b,已知其中一个为男孩,另一个也为男孩的概率____.二、计算题(一题12分):(联合分布、边缘分布)利用生日攻击进行伪造合同签名的过程。

2021-06-23 22:11:54 453

原创 VScode配置C++环境的傻瓜式教程

文章目录主要流程下载VScode安装CPP工具下载安装MinGW,配置环境变量配置C++环境运行测试插件主要流程1.下载VScode2.安装CPP工具3.下载安装MinGW、配置环境变量4.配置C++环境5.运行测试6.插件下载VScode下载链接:点此下载安装流程:按照安装步骤一步步安装即可安装CPP工具打开VScode,找到商店,搜索C++,安装列表第一个即可。下载安装MinGW,配置环境变量1.下载安装下载连接:https://sourceforge.net/proje

2020-06-26 12:32:02 488

testLBP.py

本代码采用python编写,实现内容包括各种LBP算子,可运行实现。包括:基本LBP、旋转LBP、均匀LBP、MBLBP等。

2020-06-26

温度传感器响应

温度传感器响应!!课程设计

2018-11-24

STM32F4开发板原理图

这是探索者STM32F4开发板的完整原理图,内容详细,清晰。含各模块尺寸表和IO引脚分配表。

2018-05-27

空空如也

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

TA关注的人

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