自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(144)
  • 收藏
  • 关注

原创 剑指 Offer 11. 旋转数组的最小数字

1

2022-07-01 11:52:59 242 1

原创 241. 为运算表达式设计优先级

11

2022-07-01 09:59:16 1313

原创 剑指 Offer 04. 二维数组中的查找

leetcode

2022-06-28 10:44:24 235

原创 排序算法

冒泡排序#include<bits/stdc++.h>using namespace std;int main(){ //冒泡排序 int n; cin>>n; vector<int>v(n); for(int i=0;i<n;i++){ cin>>v[i]; } for(int i=0;i<n;i++){ for(int j=0;j<

2021-04-09 14:19:03 163

原创 牛客题霸:矩阵的最小路径和

题目描述给定一个n * m的矩阵a,从左上角开始每次只能向右或者向下走,最后到达右下角的位置,路径上所有的数字累加起来就是路径和,输出所有的路径中最小的路径和。示例1输入复制[[1,3,5,9],[8,1,3,4],[5,0,6,1],[8,8,4,0]]返回值复制12备注:1 \leq n,m \leq 20001≤n,m≤20001 \leq arr_{i,j} \leq 1001≤arri,j​≤100这道题标签上写了d...

2021-04-02 10:53:33 577

原创 牛客题霸(判断一个链表是否为回文结构)

给定一个链表,请判断该链表是否为回文结构。示例1输入复制[1,2,2,1]返回值复制true备注:1 \leq n \leq 10^61≤n≤10这道题在力扣就没做出来,还是因为太懒,不愿意去思考,感觉用容器存一下算了,显然这道题不是这么做的,另一方面是陷入了一个误区,总认为做题是不能改变链表的原来的形状的,单这道题想在常数复杂度下做出来,,显然只能改变链表的链接,用快慢指针找到中间点,在slow指针去中间点的路上,将链表反转,然后就可以从中间点来..

2021-04-02 09:16:09 103

原创 Leetcode:面试题 04.02. 最小高度树(递归)

面试题 04.02. 最小高度树难度简单68收藏分享切换为英文接收动态反馈给定一个有序整数数组,元素各不相同且按升序排列,编写一个算法,创建一棵高度最小的二叉搜索树。示例:给定有序数组: [-10,-3,0,5,9],一个可能的答案是:[0,-3,9,-10,null,5],它可以表示下面这个高度平衡二叉搜索树: 0 / \ -3 9 / / -10 5 通过次数22,111提交次数2

2021-01-08 16:04:38 113

原创 完全背包问题(动态规划)

3. 完全背包问题 题目 提交记录 讨论 题解 视频讲解有NN种物品和一个容量是VV的背包,每种物品都有无限件可用。第ii种物品的体积是vivi,价值是wiwi。求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。输出最大价值。输入格式第一行两个整数,N,VN,V,用空格隔开,分别表示物品种数和背包容积。接下来有NN行,每行两个整数vi,wivi,wi,用空格隔开,分别表示第ii种物品的体积...

2021-01-06 16:58:48 1499

原创 ACWing:787. 归并排序

787. 归并排序 题目 提交记录 讨论 题解 视频讲解给定你一个长度为n的整数数列。请你使用归并排序对这个数列按照从小到大进行排序。并将排好序的数列按顺序输出。输入格式输入共两行,第一行包含整数 n。第二行包含 n 个整数(所有整数均在1~109109范围内),表示整个数列。输出格式输出共一行,包含 n 个整数,表示排好序的数列。数据范围1≤n≤1000001≤n≤100000输入样例:53 1 2 4 5...

2021-01-06 16:08:55 148

原创 疫情在家 每天写点博客吧

最近石家庄疫情有有点严重了,学校就提前放假了,昨天中午还在准备下午的算法考试, (算法考试一点没看),今天就在家里了,显然在家里也是很难能出门了那就每天做点题,好好的写点博客吧,毕竟接下来就大三下了,要考研了,这段时间就认真一点吧...

2021-01-06 15:37:47 180

原创 关于快速排序的一些讨论

学过数据结构的对快速排序应该不陌生作为一种时间复杂度为nlog2n的排序算法 ,应该是有了解的我在数据结构数上学的排序方法很常规选定最左边的为基数,从左边开始遍历,碰到大于的停下,再从右边遍历,碰到小于的停下,直到指针遇到后,讲遇到的地方改为基数,再递归遍历,但这样存在最坏的情况如果序列已经是排好了,每次都要遍历比较一遍,复杂度又回到了n所以可以选择中间原理来遍历,这样就不需要每次遍历一遍 void quick_sort(int s[], int l, int r)

2020-12-19 10:50:55 89 1

原创 Leetcode:860. 柠檬水找零(简单模拟)

考试周,忙于复习和英语六级,有不用脑子的题就写一下,没有就还是要备考,860. 柠檬水找零难度简单177收藏分享切换为英文接收动态反馈在柠檬水摊上,每一杯柠檬水的售价为5美元。顾客排队购买你的产品,(按账单bills支付的顺序)一次购买一杯。每位顾客只买一杯柠檬水,然后向你付5美元、10美元或20美元。你必须给每个顾客正确找零,也就是说净交易是每位顾客向你支付5美元。注意,一开始你手头没有任何零钱。如果你能给每位顾客正确找零,返回true,否则返回fa...

2020-12-10 17:47:27 114

原创 2020.12.5 冬季PAT甲级考试 总结

最近都没有好好写博客,因为一方面冬天心情总是很低沉,另一方面到考试周了,又忙于计网 等等的大作业和外加上PAT考试我一直在复习之前写的代码,也就没有管理博客今天刚考完PAT不到30分钟,就做到电脑旁,写下总结先说题目,第一题 斐波那契数列的运用与跳出循环这道题还是很简单就有思路的,但是我写的很久也没有bug free,第一我当时着急,想着直接循环到上限就跳出循环,不去考虑跳出条件,我感觉应该是可以的,但当时遇到了bug,就觉得可能是这个的原因,换了写法,关于 大于目标数的时候怎么跳出..

2020-12-05 17:09:43 3224 7

原创 2020.11.3思绪很乱

今天个人认为是很平常的一天,无非是昨晚看小说看到了晚上的2点,早上8点多起的床,导致了自己第一节课没有赶上,而后上课又听不下去,心情烦躁,睡了觉,中午又追小说,追的没睡午觉后,下午的计网实验,又一边划水一边看小说,让人感到无聊,到了现在刚刚下课,6.21,觉得实在没什么意思,坐在图书馆里,现在肚子还很饿,对了,因为早上没有水喝,我的药今天一口也没吃,水确实到现在也没怎么喝,口干舌燥的,确实难受,写到这里,我觉得问题就在于看小说,实际上我每次看小说只是为了打发自己无聊的时光,但是每次看小说入迷了就会无限的

2020-11-03 18:24:32 156 1

原创 LeetCode:140. 单词拆分 II(动规+回溯)

140. 单词拆分 II难度困难270收藏分享切换为英文接收动态反馈给定一个非空字符串s和一个包含非空单词列表的字典wordDict,在字符串中增加空格来构建一个句子,使得句子中所有的单词都在词典中。返回所有这些可能的句子。说明:分隔时可以重复使用字典中的单词。 你可以假设字典中没有重复的单词。示例 1:输入:s = "catsanddog"wordDict = ["cat", "cats", "and", "sand", "dog"]输出:[ "cats and...

2020-11-01 09:56:51 438

原创 Leetcode:139. 单词拆分(动规)

139. 单词拆分难度中等726收藏分享切换为英文接收动态反馈给定一个非空字符串s和一个包含非空单词的列表wordDict,判定s是否可以被空格拆分为一个或多个在字典中出现的单词。说明:拆分时可以重复使用字典中的单词。 你可以假设字典中没有重复的单词。示例 1:输入: s = "leetcode", wordDict = ["leet", "code"]输出: true解释: 返回 true 因为 "leetcode" 可以被拆分成 "leet code"。示例...

2020-11-01 09:46:48 244

原创 关于leetcode的全局变量

leetcode的函数一定要带有你需要的各种参数,想要用全局动态容器来存入函数中的数,在leetcode中难以通过编译,所以用什么容器,写什么引用,才是正确规范的做法

2020-10-30 17:10:22 1682

原创 Leetcode:463. 岛屿的周长(dfs||迭代)

463. 岛屿的周长难度简单316收藏分享切换为英文接收动态反馈给定一个包含 0 和 1 的二维网格地图,其中 1 表示陆地0 表示水域。网格中的格子水平和垂直方向相连(对角线方向不相连)。整个网格被水完全包围,但其中恰好有一个岛屿(或者说,一个或多个表示陆地的格子相连组成的岛屿)。岛屿中没有“湖”(“湖” 指水域在岛屿内部且不和岛屿周围的水相连)。格子是边长为 1 的正方形。网格为长方形,且宽度和高度均不超过 100 。计算这个岛屿的周长。示例 :输入:[[0,1,0,..

2020-10-30 17:05:27 132

原创 Leetcode:144. 二叉树的前序遍历(简单递归)

144. 二叉树的前序遍历难度中等423收藏分享切换为英文接收动态反馈给定一个二叉树,返回它的前序遍历。示例:输入: [1,null,2,3] 1 \ 2 / 3 输出: [1,2,3]进阶:递归算法很简单,你可以通过迭代算法完成吗?通过次数208,401提交次数305,979这道题用递归算法确实很简单,甚至不能再简单了,相信学过数的遍历的定然是能够做出来的,至于迭代算法,我就自己想想,不写在这里了,毕竟迭代学的还是...

2020-10-27 17:48:34 111

原创 1024. 视频拼接(动态规划)

视频拼接你将会获得一系列视频片段,这些片段来自于一项持续时长为 T 秒的体育赛事。这些片段可能有所重叠,也可能长度不一。视频片段 clips[i] 都用区间进行表示:开始于 clips[i][0] 并于 clips[i][1] 结束。我们甚至可以对这些片段自由地再剪辑,例如片段 [0, 7] 可以剪切成 [0, 1] + [1, 3] + [3, 7] 三部分。我们需要将这些片段进行再剪辑,并将剪辑后的内容拼接成覆盖整个运动过程的片段([0, T])。返回所需片段的最小数目,如果无法完成该任务,则.

2020-10-24 10:24:04 33063

原创 2020 1024(程序员快乐)

这是我过的第三个程序员节,不得不说时间走得飞快,转眼我也大三了,回想自己大学的日子,不得不感叹,在真正成为计算机专业的学生后,我是相当迷茫的,在初入大一时的迷茫,到现在有了一定的目标,也经历了三年,浪费了三年不过如果在给我一次机会,可能我还是会这样过去我是一个没什么大追求的人,我愿意去玩,甚至为了玩可以逃课什么的,但是我有目标,如果我真的建立了目标,我会抛弃一切去完成它,为了完成它我宁愿挂科,不及格,所以大学前两年,我的目标就是玩不过所幸,我也没有挂科,也算完美的度过了自己的目标吧但是到了大

2020-10-24 09:30:10 448 1

原创 Leetcode:1288. 删除被覆盖区间(贪心算法)

1288. 删除被覆盖区间难度中等20收藏分享切换为英文接收动态反馈给你一个区间列表,请你删除列表中被其他区间所覆盖的区间。只有当c <= a且b <= d时,我们才认为区间[a,b)被区间[c,d)覆盖。在完成所有删除操作后,请你返回列表中剩余区间的数目。示例:输入:intervals = [[1,4],[3,6],[2,8]]输出:2解释:区间 [3,6] 被区间 [2,8] 覆盖,所以它被删除了。提示:​​​​​​1 &l...

2020-10-23 19:47:12 300

原创 Leetcode:1414. 和为 K 的最少斐波那契数字数目(贪心)

1414. 和为 K 的最少斐波那契数字数目难度中等15收藏分享切换为英文接收动态反馈给你数字k,请你返回和为k的斐波那契数字的最少数目,其中,每个斐波那契数字都可以被使用多次。斐波那契数字定义为:F1= 1 F2= 1 Fn= Fn-1+ Fn-2, 其中 n > 2 。数据保证对于给定的k,一定能找到可行解。示例 1:输入:k = 7输出:2 解释:斐波那契数字为:1,1,2,3,5,8,13,……对于 k = 7 ,我们可以得到 ...

2020-10-22 16:28:29 110

原创 Leetcode:1247. 交换字符使得字符串相同

1247. 交换字符使得字符串相同难度中等33收藏分享切换为英文接收动态反馈有两个长度相同的字符串s1和s2,且它们其中只含有字符"x"和"y",你需要通过「交换字符」的方式使这两个字符串相同。每次「交换字符」的时候,你都可以在两个字符串中各选一个字符进行交换。交换只能发生在两个不同的字符串之间,绝对不能发生在同一个字符串内部。也就是说,我们可以交换s1[i]和s2[j],但不能交换s1[i]和s1[j]。最后,请你返回使s1和s2相同的最小交换次数,...

2020-10-21 18:18:27 225

原创 PAT: 城市间紧急救援(dijkstra)

7-25 城市间紧急救援 (300分)作为一个城市的应急救援队伍的负责人,你有一张特殊的全国地图。在地图上显示有多个分散的城市和一些连接城市的快速道路。每个城市的救援队数量和每一条连接两个城市的快速道路长度都标在地图上。当其他城市有紧急求助电话给你的时候,你的任务是带领你的救援队尽快赶往事发地,同时,一路上召集尽可能多的救援队。输入格式:输入第一行给出4个正整数N、M、S、D,其中N(2≤N≤500)是城市的个数,顺便假设城市的编号为0 ~ (N−1);M是快速道路的条数;S是出发地的城市编号;D是目

2020-10-20 21:10:11 263

原创 Leetcode:143. 重排链表

重排链表给定一个单链表 L:L0→L1→…→Ln-1→Ln ,将其重新排列后变为: L0→Ln→L1→Ln-1→L2→Ln-2→…你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。示例 1:给定链表 1->2->3->4, 重新排列为 1->4->2->3.示例 2:给定链表 1->2->3->4->5, 重新排列为 1->5->2->4->3.通过次数59,162提交次数100,066这道.

2020-10-20 18:16:14 87

原创 LeetCode:19. 删除链表的倒数第N个节点(快慢指针)

问题描述:给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。示例:给定一个链表: 1->2->3->4->5, 和 n = 2.当删除了倒数第二个节点后,链表变为 1->2->3->5.说明:给定的 n 保证是有效的。进阶:你能尝试使用一趟扫描实现吗?来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/remove-nth-node-from-end-of-list著作权归领扣网

2020-10-18 19:07:35 114

原创 PAT: 倒数第N个字符串

给定一个完全由小写英文字母组成的字符串等差递增序列,该序列中的每个字符串的长度固定为 L,从 L 个 a 开始,以 1 为步长递增。例如当 L 为 3 时,序列为 { aaa, aab, aac, …, aaz, aba, abb, …, abz, …, zzz }。这个序列的倒数第27个字符串就是 zyz。对于任意给定的 L,本题要求你给出对应序列倒数第 N 个字符串。输入格式:输入在一行中给出两个正整数 L(2 ≤ L ≤ 6)和 N(≤10​5​​ )。输出格式:在一行中输出对应序列倒数第

2020-10-17 16:52:46 136

原创 Leetcode:1029. 两地调度(贪心)

两地调度公司计划面试 2N 人。第 i 人飞往 A 市的费用为 costs[i][0],飞往 B 市的费用为 costs[i][1]。返回将每个人都飞到某座城市的最低费用,要求每个城市都有 N 人抵达。示例:输入:[[10,20],[30,200],[400,50],[30,20]]输出:110解释:第一个人去 A 市,费用为 10。第二个人去 A 市,费用为 30。第三个人去 B 市,费用为 50。第四个人去 B 市,费用为 20。最低总费用为 10 + 30 + 50 + 20.

2020-10-14 19:04:42 226

原创 PAT:1007 Maximum Subsequence Sum (25分)

Given a sequence of K integers { N​1​​ , N​2​​ , …, N​K​​ }. A continuous subsequence is defined to be { N​i​​ , N​i+1​​ , …, N​j​​ } where 1≤i≤j≤K. The Maximum Subsequence is the continuous subsequence which has the largest sum of its elemen

2020-10-09 18:49:26 52

原创 PAT:1004 Counting Leaves (30分)(dfs遍历)

A family hierarchy is usually presented by a pedigree tree. Your job is to count those family members who have no child.Input Specification:Each input file contains one test case. Each case starts with a line containing 0<N<100, the number of nodes

2020-10-09 18:30:44 136

原创 关于链表中,指针的运用详解

*2020.10.9每日一题,很详细的链表问题详解,在此记录一下地址链表问题详解

2020-10-09 10:36:11 414

原创 Leetcode:18. 四数之和(双指针,排序后遍历)

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

2020-10-05 11:19:40 97

原创 Leetcode:2. 两数相加(链表的应用)

两数相加给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0 开头。示例:输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 -> 0 -> 8原因:342 + 465 = 807通过次数576,138提交次数1,499,041力扣.

2020-10-04 15:05:41 69

原创 Leetcode:划分字母区间(贪心算法)

划分字母区间字符串 S 由小写字母组成。我们要把这个字符串划分为尽可能多的片段,同一个字母只会出现在其中的一个片段。返回一个表示每个字符串片段的长度的列表。示例 1:输入:S = “ababcbacadefegdehijhklij”输出:[9,7,8]解释:划分结果为 “ababcbaca”, “defegde”, “hijhklij”。每个字母最多出现在一个片段中。像 “ababcbacadefegde”, “hijhklij” 的划分是错误的,因为划分的片段数较少。提示:S的长度.

2020-10-03 15:18:20 176

原创 PAT:1003 Emergency (25分)(dijkstra)

1003Emergency(25分)As an emergency rescue team leader of a city, you are given a special map of your country. The map shows several scattered cities connected by some roads. Amount of rescue teams in each city and the length of each road between any pai..

2020-10-03 13:25:58 105

原创 PAT:1001 A+B Format (20分)

Calculate a+b and output the sum in standard format – that is, the digits must be separated into groups of three by commas (unless there are less than four digits).Input Specification:Each input file contains one test case. Each case contains a pair of i

2020-10-03 11:31:45 994

原创 Leetcode:1282. 用户分组(贪心,hash)

1282. 用户分组有 n 位用户参加活动,他们的 ID 从 0 到 n - 1,每位用户都 恰好 属于某一用户组。给你一个长度为 n 的数组 groupSizes,其中包含每位用户所处的用户组的大小,请你返回用户分组情况(存在的用户组以及每个组中用户的 ID)。你可以任何顺序返回解决方案,ID 的顺序也不受限制。此外,题目给出的数据保证至少存在一种解决方案。示例 1:输入:groupSizes = [3,3,3,3,3,1,3]输出:[[5],[0,1,2],[3,4,6]]解释:其他可能

2020-10-03 11:15:20 189

原创 Leetcode:1. 两数之和(每日一题,爷青回)

两数之和给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]2020,10,3,力扣每日一题,two sum,爷青回这道题显然每个力扣用户都做过了吧,这里只是简单的记录一下方法,1双.

2020-10-03 10:53:55 105

原创 Leetcode:874. 模拟行走机器人(贪心,行走模拟)

模拟行走机器人机器人在一个无限大小的网格上行走,从点 (0, 0) 处开始出发,面向北方。该机器人可以接收以下三种类型的命令:-2:向左转 90 度-1:向右转 90 度1 <= x <= 9:向前移动 x 个单位长度在网格上有一些格子被视为障碍物。第 i 个障碍物位于网格点 (obstacles[i][0], obstacles[i][1])机器人无法走到障碍物上,它将会停留在障碍物的前一个网格方块上,但仍然可以继续该路线的其余部分。返回从原点到机器人所有经过的路径点(坐.

2020-10-03 10:51:17 149

空空如也

空空如也

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

TA关注的人

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