![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
热题
文章平均质量分 95
mingchen_peng
这个作者很懒,什么都没留下…
展开
-
热题系列8
2.分析这一题刚刚开始是很非常懵,主要是没有理解到"给定一个整数数组 a,其中1 ≤ a[i] ≤ n (n为数组长度)" 这个条件的真谛。这个条件就是暗示我们可以使用这个数组里面的值帮我们来记录一些信息。1.首先你的约束条件是 “你可以不用到任何额外空间并在O(n)时间复杂度内” ,所以不能两次遍历,只能遍历一次且需要用到数组里面的位置来帮助我们记录信息。2.那么我们就考虑循环每个值,利用这个(值-1)代表的索引值来记录是否已经被遍历到。原创 2024-07-07 19:43:11 · 541 阅读 · 0 评论 -
热题系列章节7
def reverse(self, head): # 链表反转pre = headwhile cur:pre = curcur = tmpreturn preh = ListNode((l1.val + l2.val) % 10) # 额外记下头结点,方便后续反转链表p = helif l1:elif l2:elif flag:flag = 0p = node。原创 2024-06-30 19:58:18 · 746 阅读 · 0 评论 -
热题系列章节6
序列化是将一个数据结构或者对象转换为连续的比特位的操作,进而可以将转换后的数据存储在一个文件或者内存中,同时也可以通过网络传输到另一个计算机环境,采取相反方式重构得到原数据。请设计一个算法来实现二叉树的序列化与反序列化。这里不限定你的序列 / 反序列化算法执行逻辑,你只需要保证一个二叉树可以被序列化为一个字符串并且将这个字符串反序列化为原始的树结构。示例:示: 这与 LeetCode 目前使用的方式一致,详情请参阅 LeetCode 序列化二叉树的格式。原创 2024-06-23 15:24:55 · 775 阅读 · 0 评论 -
热题系列章节5
给定一个大小为 n 的数组,找到其中的多数元素。多数元素是指在数组中出现次数大于 ⌊ n/2 ⌋ 的元素。你可以假设数组是非空的,并且给定的数组总是存在多数元素。示例 1:输入: [3,2,3]输出: 3示例 2:输入: [2,2,1,1,1,2,2]输出: 2题目要求返回出现次数大于⌊ n/2 ⌋ 的元素,这里需要向下取整,并使用Counter()统计数组中元素及其出现的次数,最后遍历统计字典中元素的值,找到值大于⌊ n/2 ⌋ 的键返回即可。原创 2024-06-10 12:54:04 · 915 阅读 · 0 评论 -
热题系列章节4
给你一个按照非递减顺序排列的整数数组 nums,和一个目标值 target。请你找出给定目标值在数组中的开始位置和结束位置。如果数组中不存在目标值 target,返回 [-1, -1]。原创 2024-06-09 08:15:59 · 721 阅读 · 0 评论 -
热题系列章节3
比较两个版本号 version1 和 version2。如果 version1 > version2 返回 1,如果 version1 < version2 返回 -1, 除此之外返回 0。你可以假设版本字符串非空,并且只包含数字和 . 字符。. 字符不代表小数点,而是用于分隔数字序列。例如,2.5 不是“两个半”,也不是“差一半到三”,而是第二版中的第五个小版本。你可以假设版本号的每一级的默认修订版号为 0。例如,版本号 3.4 的第一级(大版本)和第二级(小版本)修订号分别为 3 和 4。原创 2024-06-01 22:36:18 · 659 阅读 · 0 评论 -
热题系列章节1
遍历到i =3 nums[i]=9时结束,,9 与5 交换的排列必然比当前排列大,所以前面数字可以不考虑,而根据之前遍历数组 第i个之后的部分必然是按降序排列,找到后半部分最小,且比nums[i]大的元素,与nums[i]交换,再将后半部分设置为最小排列即可。例如,arr = [1,2,3] ,以下这些都可以视作 arr 的排列:[1,2,3]、[1,3,2]、[3,1,2]、[2,3,1]。输出:[“((()))”,“(()())”,“(())()”,“()(())”,“()()()”]原创 2024-05-25 14:06:01 · 914 阅读 · 0 评论