- 博客(25)
- 收藏
- 关注
原创 LeetCode刷题-链表83:删除排序链表中的重复元素
给定一个已排序的链表的头head,删除所有重复的元素,使每个元素只出现一次。返回已排序的链表[1,2][1,2,3][0, 300]
2023-07-30 00:12:46
160
原创 LeetCode刷题-链表141:环形链表
给你一个链表的头节点 head ,判断链表中是否有环。如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。注意:pos 不作为参数进行传递。仅仅是为了标识链表的实际情况。如果链表中存在环 ,则返回 true。否则,返回 false。true链表中有一个环,其尾部连接到第二个节点。true链表中有一个环,其尾部连接到第一个节点false链表中没有环。-1你能用。
2023-07-29 22:52:10
155
原创 LeetCode刷题-链表21:合并有序链表
将两个升序链表合并为一个新的链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。[][0]l2。
2023-07-28 23:40:34
141
原创 LeetCode刷题-链表234:回文链表
给你一个单链表的头节点head,请你判断该链表是否为回文链表。如果是,返回true;否则,返回false。truefalse[1, 105]你能否用O(n)时间复杂度和O(1)空间复杂度解决此题?
2023-07-28 16:11:14
138
原创 LeetCode刷题-数组463:岛屿的周长
给定一个 row x col 的二维网格地图 grid ,其中:grid[i][j] = 1 表示陆地, grid[i][j] = 0 表示水域。网格中的格子 水平和垂直 方向相连(对角线方向不相连)。整个网格被水完全包围,但其中恰好有一个岛屿(或者说,一个或多个表示陆地的格子相连组成的岛屿)。岛屿中没有“湖”(“湖” 指水域在岛屿内部且不和岛屿周围的水相连)。格子是边长为 1 的正方形。网格为长方形,且宽度和高度均不超过 100。计算这个岛屿的周长。44grid[i][j] 为 0 或 1。
2023-07-28 13:32:48
59
原创 LeetCode刷题-数组643:子数组最大平均数
给你一个由n个元素组成的整数数组nums和一个整数k。请你找出平均数最大且k的连续子数组,并输出该最大平均数。任何误差小于10-5的答案都将被视为正确答案。输入:nums = [1,12,-5,-6,50,3], k = 4输出:12.75解释:最大平均数 (12-5-6+50)/4 = 51/4 = 12.755.00000。
2023-07-28 00:32:57
154
1
原创 LeetCode刷题-数组594:最长和谐子序列
和谐数组是指一个数组里元素的最大值和最小值之间的差别 正好是 1。现在,给你一个整数数组 nums ,请你在所有可能的子序列中找到最长的和谐子序列的长度。数组的子序列是一个由数组派生出来的序列,它可以通过删除一些元素或不删除元素、且不改变其余元素的顺序而得到。5最长的和谐子序列是 [3,2,2,2,3]20。
2023-07-27 22:58:40
63
1
原创 LeetCode刷题-数组1:两数之和
给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。输入:nums = [2,7,11,15], target = 9输出:[0,1]解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1]。输入:nums = [3,2,4], target = 6输出:[1,2]
2023-07-27 19:12:14
68
1
原创 LeetCode刷题-数组169:多数元素
给定一个大小为 n 的数组 nums ,返回其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。你可以假设数组是非空的,并且给定的数组总是存在多数元素。32尝试设计时间复杂度为 O(n)、空间复杂度为 O(1) 的算法解决此问题。
2023-07-27 18:47:37
136
1
原创 LeetCode刷题-数组53:最大子数组和
给你一个整数数组nums,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。是数组中的一个连续部分。6连续子数组 [4,-1,2,1] 的和最大,为 6。nums = [1]123如果你已经实现复杂度为O(n)的解法,尝试使用更为精妙的求解。
2023-07-27 18:12:11
152
1
原创 LeetCode刷题-数组1502:判断能否形成等差数列
给你一个数字数组 arr。如果一个数列中,任意相邻两项的差总等于同一个常数,那么这个数列就称为 等差数列。如果可以重新排列数组形成等差数列,请返回 true;否则,返回 false。输入:arr = [3,5,1]输出:true解释:对数组重新排序得到 [1,3,5] 或者 [5,3,1] ,任意相邻两项的差分别为 2 或 -2 ,可以形成等差数列。false无法通过重新排序得到等差数列。
2023-07-27 01:34:17
89
1
原创 LeetCode刷题-数组88:合并两个有序数组
给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目。请你 合并 nums2 到 nums1 中,使合并后的数组同样按 非递减顺序 排列。注意:最终,合并后数组不应由函数返回,而是存储在数组 nums1 中。为了应对这种情况,nums1 的初始长度为 m + n,其中前 m 个元素表示应合并的元素,后 n 个元素为 0 ,应忽略。nums2 的长度为 n。
2023-07-27 01:11:48
69
1
原创 LeetCode刷题-字符串551:学生出勤记录
给你一个字符串 s 表示一个学生的出勤记录,其中的每个字符用来标记当天的出勤情况(缺勤、迟到、到场)。记录中只含下面三种字符:'A':Absent,缺勤'L':Late,迟到'P':Present,到场如果学生能够 同时 满足下面两个条件,则可以获得出勤奖励:按 总出勤 计,学生缺勤('A')严格 少于两天。学生 不会 存在 连续 3 天或 连续 3 天以上的迟到('L')记录。如果学生可以获得出勤奖励,返回 true;否则,返回 false。true。
2023-07-21 22:41:23
155
1
原创 LeetCode刷题-字符串1694:重新格式化电话号码
给你一个字符串形式的电话号码 number。number 由数字、空格 ' '、和破折号 '-' 组成。请你按下述方式重新格式化电话号码。首先,删除 所有的空格和破折号。其次,将数组从左到右 每 3 个一组 分块,直到 剩下 4 个或更少数字。剩下的数字将按下述规定再分块:2 个数字:单个含 2 个数字的块。3 个数字:单个含 3 个数字的块。4 个数字:两个分别含 2 个数字的块。最后用破折号将这些块连接起来。
2023-07-21 19:34:28
87
1
原创 LeetCode刷题-字符串14:最长公共前缀
编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串""。"fl"""输入不存在公共前缀。
2023-07-21 00:24:51
82
1
原创 LeetCode刷题-字符串:859-亲密字符串
给你两个字符串 s 和 goal ,只要我们可以通过交换 s 中的两个字母得到与 goal 相等的结果,就返回 true;否则返回 false。交换字母的定义是:取两个下标 i 和 j (下标从 0 开始)且满足 i!= j ,接着交换 s[i] 和 s[j] 处的字符。输入:s = "ab", goal = "ba"输出:true解释:你可以交换 s[0] = 'a' 和 s[1] = 'b' 生成 "ba",此时 s 和 goal 相等。输入:s = "ab", goal = "ab"
2023-07-20 19:09:37
37
原创 LeetCode刷题-字符串:最长回文串
给定一个包含大写字母和小写字母的字符串 s ,返回通过这些字母构造成的。在构造过程中,请注意。比如 "Aa" 不能当做一个回文字符串。7我们可以构造的最长的回文串是"dccaccd", 它的长度是 7。s = "a"17。
2023-07-20 18:08:40
146
原创 LeetCode刷题-字符串392:判断子序列
给定字符串 s 和 t ,判断 s 是否为 t 的子序列。字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。(例如,"ace"是"abcde"的一个子序列,而"aec"不是)。进阶:如果有大量输入的 S,称作 S1, S2, ... , Sk 其中 k >= 10亿,你需要依次检查它们是否为 T 的子序列。在这种情况下,你会怎样改变代码?truetrue。
2023-07-20 15:56:09
133
原创 Leetcode刷题-字符串20:有效的括号
给定一个只包括 '(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效。有效字符串需满足:1、左括号必须用相同类型的右括号闭合。2、左括号必须以正确的顺序闭合。3、每个右括号都有一个对应的相同类型的左括号。
2023-07-19 23:19:03
195
原创 Leetcode刷题-字符串344:反转字符串
编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给出。不要给另外的数组分配额外的空间,你必须、使用 O(1) 的额外空间解决这一问题。
2023-07-19 21:26:53
49
原创 Leetcode刷题-字符串125:验证回文串
如果在将所有大写字符转换为小写字符、并移除所有非字母数字字符之后,短语正着读和反着读都一样。则可以认为该短语是一个 回文串。字母和数字都属于字母数字字符。给你一个字符串 s,如果它是 回文串 ,返回 true;否则,返回 false。输入: s = "A man, a plan, a canal: Panama"输出:true解释:"amanaplanacanalpanama" 是回文串。输入: s = "race a car"输出:false解释:"race a car" 不是回文串。
2023-07-18 23:14:52
133
1
原创 Leetcode刷题-字符串1154:一年中的第几天
给你一个字符串 date ,按 YYYY-MM-DD 格式表示一个 现行公元纪年法 日期。返回该日期是当年的第几天。输入:date = "2019-01-09"输出:9解释:给定日期是2019年的第九天。输入:date = "2019-02-10"输出:41(2)date[4] == date[7] == '-',其他的 date[i] 都是数字(3)date 表示的范围从 1900 年 1 月 1 日至 2019 年 12 月 31 日。
2023-07-18 20:48:32
482
1
原创 mininet安装部署
建议使用源码安装,步骤如下:1.更新软件:apt-get updateapt-get upgrade在执行第二个命令时,可能出现“无法连接…”的情况,这有可能是因为网络断开的问题2.在github上获取mininet源码git clone http://github.com/mininet/mininet.git可能会报错说没有安装git,此时根据提示输入命令sudo apt install git安装,再执行上述语句即可。3.安装mininet:mininet/util/instal
2020-10-29 16:51:40
505
原创 Python学习笔记——条件、循环和其他语句
学习用书:《Python 从菜鸟到高手》李宁print函数为print函数传入多个参数值时,print函数会将所有的参数值首尾相接输出,并默认用空格隔开,如:print("a","b","c","d") #输出:a b c d如果要用逗号隔开,且参数值与逗号间没有空格,则修改默认的多参数值分隔符,在print函数后添加“sep=“,” ”即可print("a","b","c","d",sep=",") #输出:a,b,c,d若希望调用多次print函数都在同一行输出,在print函数最后加上
2020-09-11 12:30:31
242
原创 Python学习笔记——python语言基础
学习用书:《Python 从菜鸟到高手》李宁导入Python模块(1)语法结构:import module_name;(2)引入模块中函数的语法:module_name.function_name;(3)在程序中大量使用模块中的某些函数时,每次调用都加上模块名比较麻烦,可用from…import…语句:from module_name import function_name;(4)导入模块中所有函数:from module_name import *;例:导入math模块im
2020-09-07 15:25:17
267
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人