力扣每日一题
文章平均质量分 73
致力于将力扣中的题以更详细清楚的语言介绍给大家
东条希尔薇
一名喜欢编程的在校大学生
展开
-
力扣每日一题——NO.33——搜索旋转排序数组
原题链接题目描述整数数组 nums 按升序排列,数组中的值 互不相同 。在传递给函数之前,nums 在预先未知的某个下标 k(0 <= k < nums.length)上进行了 旋转,使数组变为 [nums[k], nums[k+1], …, nums[n-1], nums[0], nums[1], …, nums[k-1]](下标 从 0 开始 计数)。例如, [0,1,2,4,5,6,7] 在下标 3 处经旋转后可能变为 [4,5,6,7,0,1,2] 。给你 旋转后 的数组 nu原创 2022-02-04 21:33:17 · 293 阅读 · 8 评论 -
力扣每日一题——327.区间和的个数
原题链接题目描述给你一个整数数组 nums 以及两个整数 lower 和 upper 。求数组中,值位于范围 [lower, upper] (包含 lower 和 upper)之内的 区间和的个数 。区间和 S(i, j) 表示在 nums 中,位置从 i 到 j 的元素之和,包含 i 和 j (i ≤ j)。例如:输入:nums = [-2,5,-1], lower = -2, upper = 2输出:3解释:存在三个区间:[0,0]、[2,2] 和 [0,2] ,对应的区间和分别原创 2022-01-17 21:27:00 · 1334 阅读 · 24 评论 -
力扣每日一题填坑系列——二叉树基础oj题合集
一些二叉树基础题原创 2022-01-03 15:27:29 · 6034 阅读 · 39 评论 -
力扣每日一题——NO.98——验证二叉搜索树
题目原代码和图解已上传至我的码云题目描述:给你一个二叉树的根节点 root ,判断其是否是一个有效的二叉搜索树。有效 二叉搜索树定义如下:节点的左子树只包含 小于 当前节点的数。节点的右子树只包含 大于 当前节点的数。所有左子树和右子树自身必须也是二叉搜索树。思路求解这里我们首先要了解一下什么是二叉搜索树,我刚拿到这个定义误以为只需要根结点的左结点小于当前结点和右结点大于当前结点就行了所以我第一次写出了以下的错误代码这是我脑中构思出的判断思路bool isValidB.原创 2021-11-12 18:47:26 · 1632 阅读 · 22 评论 -
力扣每日一题填坑系列——链表多题组合
目录回文链表复制带随机指针的链表两两交换链表中的结点回文链表题目链接题目描述给定一个链表的 头节点 head ,请判断其是否为回文链表。如果一个链表是回文,那么链表节点序列从前往后看和从后往前看是相同的。例如:[1,2,3,3,2,1]就是一个回文链表思路求解我们要解这道题,就要先抓住回文链表的特征它有什么特征?从后往前看和从前往后看相同也就是需要:前半段链表和后半段链表相同我们只需要:将后半段链表逆置,再依次与前半段链表比较即可至于怎么判断链表中点和逆置,已经在前面的博原创 2021-11-10 21:10:54 · 810 阅读 · 0 评论 -
力扣每日一题NO.622——循环队列
题目描述设计你的循环队列实现。 循环队列是一种线性数据结构,其操作表现基于 FIFO(先进先出)原则并且队尾被连接在队首之后以形成一个循环。它也被称为“环形缓冲器”。循环队列的一个好处是我们可以利用这个队列之前用过的空间。在一个普通队列里,一旦一个队列满了,我们就不能插入下一个元素,即使在队列前面仍有空间。但是使用循环队列,我们能使用这些空间去存储新的值。你的实现应该支持如下操作:MyCircularQueue(k): 构造器,设置队列长度为 k 。Front: 从队首获取元素。如果队列原创 2021-11-02 11:38:33 · 316 阅读 · 0 评论 -
力扣每日一题——NO.142环形链表2
题目原代码和图解已上传至我的码云题目描述给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。注意,pos 仅仅是用于标识环的情况,并不会作为参数传递到函数中。说明:不允许修改给定的链表。进阶:你是否可以使用 O(1) 空间解决此题?思路求解这道题我们有两个思路去解决第一种思路我们在前面的文章中,已经讲.原创 2021-10-29 20:43:25 · 205 阅读 · 2 评论 -
力扣每日一题NO.160.相交链表
题目原代码和图解已上传至我的码云题目描述:给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表没有交点,返回 null 。上图中我们就需要返回值为8的结点思路求解:首先我们需要检查它们到底相不相交,它们不相交的话就应该是这样最后两个链表都会遍历到NULL它们相交的时候,不管是什么情况,肯定会有:最后一个链表是相等的所以我们判断是否相交的时候可以用最后一个结点来判断如果不相等,就返回NULL。在寻找的时候,可能一般情况.原创 2021-10-28 15:29:38 · 334 阅读 · 5 评论 -
【重要】力扣每日一题.NO141.环形链表
画图讲解和源代码已上传至我的码云原题地址目录投票直通车题目描述给定一个链表,判断链表中是否有环。如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。注意:pos 不作为参数进行传递,仅仅是为了标识链表的实际情况。如果链表中存在环,则返回 true 。 否则,返回 false 。输入:head = [3,.原创 2021-10-25 21:51:36 · 274 阅读 · 10 评论 -
【1024狂欢】力扣经典链表OJ题合集
现在的力扣题的源代码我会全部一并上传至我的码云仓库里面,点我看仓库首先祝各位程序猿1024狂欢节快乐鸭!这是属于我们的节日为了致敬1024,今天的力扣系列不再是一题了,而是多个题的组合,帮助...原创 2021-10-24 20:37:49 · 4283 阅读 · 11 评论 -
力扣每日一题:剑指offer05——替换空格
题目描述:请实现一个函数,把字符串 s 中的每个空格替换成"%20"。输入:s = “We are happy.”输出:“We%20are%20happy.”前言力扣上评论区的许多大佬都已经给出了c++和java实现的方法,但我却没有找到用纯c语言实现的方法,所以我写了这篇博客用来解释这道题的纯c解法,解法可能不如上面两种语言的好,仅供参考~思路:这道题,首先要确保一个字符串的大小要足够装的下替换后的字符经过观察发现:每有一个空格,字符串长度就增加2解释:一个空格用来放’%’,剩下原创 2021-10-21 15:17:42 · 1595 阅读 · 16 评论 -
力扣每日一题——NO.26删除有序数组中的重复项(c语言实现)
题目描述:给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。输入:nums = [1,1,2]输出:2, nums = [1,2]解释:函数应该返回新的长度 2 ,并且原数组 nums 的前两个元素被修改为 1, 2 。不需要考虑数组中超出新长度后面的元素。分析:我们很容易想到的方法就是暴力求解法:指定一个i和j变量,i指示原创 2021-10-15 14:46:45 · 1141 阅读 · 20 评论