随笔分类 -  Sheldon的刷题笔记

摘要:Sheldon的刷题笔记 字符串处理 1694. 重新格式化电话号码 字符串模拟 class Solution { public: string reformatNumber(string number) { string ans = ""; for(int i = 0,num = 0; i < n 阅读全文
posted @ 2022-09-29 19:04 Sheldon2 阅读(25) 评论(0) 推荐(0)
摘要:2399. 检查相同字母间的距离 class Solution { public: bool checkDistances(string s, vector<int>& distance) { vector<int> p[26];//首先我们定义一个vector类型的数组 for(int i = 0 阅读全文
posted @ 2022-09-27 18:39 Sheldon2 阅读(23) 评论(0) 推荐(0)
摘要:2409. 统计共同度过的日子数 知识点1 区间求交问题,已知我们的区间1:[a,b],区间2:[c,d],那么区间1和区间2有交集部分的长度为多少呢? 我们有如下公式:max{0,min(b,d) - max(a,c) + 1} 知识点2 sscanf()函数 下面是 sscanf() 函数的声明 阅读全文
posted @ 2022-09-26 21:18 Sheldon2 阅读(64) 评论(0) 推荐(0)
摘要:2414. 最长的字母序连续子字符串的长度 双指针 class Solution { public: int longestContinuousSubstring(string s) { int res = 0; for(int i = 0; i < s.size(); i++){ int j = 阅读全文
posted @ 2022-09-26 20:47 Sheldon2 阅读(39) 评论(0) 推荐(0)
摘要:2418. 按身高排序 pair默认对first升序,当first相同时对second升序 class Solution { public: vector<string> sortPeople(vector<string>& names, vector<int>& heights) { vector 阅读全文
posted @ 2022-09-26 20:33 Sheldon2 阅读(83) 评论(0) 推荐(0)
摘要:198. 打家劫舍 class Solution { public: int rob(vector<int>& nums) { int n = nums.size(); vector<int> f(n + 1), g(n + 1); for(int i = 1; i <=n; i++) { f[i] 阅读全文
posted @ 2022-09-26 20:15 Sheldon2 阅读(27) 评论(0) 推荐(0)
摘要:1346. 检查整数及其两倍数是否存在 哈希表 class Solution { public: bool checkIfExist(vector<int>& w) { unordered_set<int> hash; for(auto x:w) { //对于当前数据,看看哈希表中是否存在满足条件的 阅读全文
posted @ 2022-09-25 19:43 Sheldon2 阅读(18) 评论(0) 推荐(0)
摘要:63. 不同路径 II 思路: 这是一道DP问题 集合划分: 当前值可以从两个地方转移过来①从上面转移过来②从左边转移过来 class Solution { public: int uniquePathsWithObstacles(vector<vector<int>>& g) { int n = 阅读全文
posted @ 2022-09-25 19:34 Sheldon2 阅读(13) 评论(0) 推荐(0)
摘要:100. 相同的树 思路: 我们可以使用递归处理 对于两棵树我们可以走相同的地方判断,他们的值是否相同 特判 如果两个结点均为空,则两颗树相同 如果仅有其中一边为空,则不同 如果值不相同,则不同 递归处理 CPP代码 class Solution { public: bool isSameTree( 阅读全文
posted @ 2022-09-25 19:00 Sheldon2 阅读(20) 评论(0) 推荐(0)
摘要:剑指 Offer 03. 数组中重复的数字 找出数组中重复的数字。 在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。 示例 1: 输入: [2, 3, 1, 0, 阅读全文
posted @ 2022-09-24 11:31 Sheldon2 阅读(14) 评论(0) 推荐(0)
摘要:回文数 [题目来源leetcode]https://leetcode.cn/problems/palindrome-number/ 给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。 回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 例如,$12 阅读全文
posted @ 2022-09-23 00:10 Sheldon2 阅读(35) 评论(0) 推荐(0)
摘要:数字三角形 题目 给定一个如下图所示的数字三角形,从顶部出发,在每一结点可以选择移动至其左下方的结点或移动至其右下方的结点,一直走到底层,要求找出一条路径,使路径上的数字的和最大。 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 输入格式 第一行包含整数n,表示数字三角形的层数。 接下来 阅读全文
posted @ 2022-09-22 23:49 Sheldon2 阅读(36) 评论(0) 推荐(0)
摘要:题目 求a的b次方对p取模的值。 输入格式 三个整数 a,b,p在同一行用空格隔开。 输出格式 输出一个整数,表示a^b mod p的值。 数据范围 $0≤a,b≤10^{9}$ $1≤p≤10^{9}$ 输入样例: 3 2 7 输出样例: 2 [AcWing89] 快速幂 要计算$3^7$,如果用 阅读全文
posted @ 2022-09-13 17:08 Sheldon2 阅读(42) 评论(0) 推荐(0)
摘要:题目: 地上有一个m行n列的方格,从坐标 [0,0] 到坐标 [m-1,n-1] 。一个机器人从坐标 [0, 0] 的格子开始移动,它每次可以向左、右、上、下移动一格(不能移动到方格外),也不能进入行坐标和列坐标的数位之和大于k的格子。例如,当k为18时,机器人能够进入方格 [35, 37] ,因为 阅读全文
posted @ 2022-09-13 17:04 Sheldon2 阅读(38) 评论(0) 推荐(0)
摘要:题目: 给定一个$n×m$的二维整数数组,用来表示一个迷宫,数组中只包含 $0$ 或$1$,其中$0$表示可以走的路,$1$表示不可通过的墙壁。 最初,有一个人位于左上角 $(1,1)$处,已知该人每次可以向上、下、左、右任意一个方向移动一个位置。 请问,该人从左上角移动至右下角 $(n,m)$处, 阅读全文
posted @ 2022-09-13 12:38 Sheldon2 阅读(41) 评论(0) 推荐(0)