文章 2022-06-13 来自:开发者社区

LeetCode刷题(9)【树】前序&深度&平衡(C语言)

二叉树知识回顾——【树】之二叉树(C语言)(含图解)_半生瓜のblog-CSDN博客二叉树的前序遍历144. 二叉树的前序遍历 - 力扣(LeetCode) (leetcode-cn.com)本题中,对于C++或者Java等语言,返回的是它们的数据结构库里面的数据结构,而C语言没有,这也就是如果用C语言往后通吃数据结构会困难的原因。注意本体的传参,操作的是不是一个数。/** * Definit.....

LeetCode刷题(9)【树】前序&深度&平衡(C语言)
文章 2022-06-13 来自:开发者社区

LeetCode刷题(8)【栈&队列】用栈实现队列(C语言)

用栈实现队列232. 用栈实现队列 - 力扣(LeetCode) (leetcode-cn.com)类似题目——用队列实现栈LeetCode刷题(7)【栈&队列】用队列实现栈(C语言)_半生瓜のblog-CSDN博客思路:用栈实现队列要比用队列实现栈要简单一些,我们不用来回在两个栈里面导数据,只需要导一次,然后在依次出栈就成功实现队列的出队操作了。结论:入数据往push栈里面入出数据从p....

LeetCode刷题(8)【栈&队列】用栈实现队列(C语言)
文章 2022-06-13 来自:开发者社区

LeetCode刷题(7)【栈&队列】用队列实现栈(C语言)

用队列实现栈225. 用队列实现栈 - 力扣(LeetCode) (leetcode-cn.com)目的:用队列实现栈,从先进先出——>先进后出,1234这四个数据依次从队列1的队尾进入,要让4先出,一个队列是无法实现的,所以这里的队列2就排上用场了,我们可以利用队列2来进行导数据。将123依次由队列2的队尾进入到队列2中,此时队列1中还剩一个4,将4弹出,同理,再将12依次进入到队列1中....

LeetCode刷题(7)【栈&队列】用队列实现栈(C语言)
文章 2022-06-13 来自:开发者社区

LeetCode刷题(6)【栈】有效的括号(C语言)

有效的括号20. 有效的括号 - 力扣(LeetCode) (leetcode-cn.com)思路:是左括号,就入栈,是右括号,就与栈顶的左括号判断是否匹配,如果匹配,继续,不匹配就终止。从第79行开始,前面都是实现栈以及其功能接口。typedef char StackDataType; typedef struct Stack { StackDataType* arry; in...

文章 2022-06-13 来自:开发者社区

LeetCode刷题(5)【链表】【环形链表II】(C语言)

环形链表ILeetCode刷题(3)【链表】【环形链表】&扩展_半生瓜のblog-CSDN博客环形链表II142. 环形链表 II - 力扣(LeetCode) (leetcode-cn.com)这个题写起来不难,但是证明有点麻烦。针对这个入口点怎么求,有人给出了一个结论。结论:一个指针从meet点开始走,一个指针从链表的开始点走,它们会在入口点相遇。(看下面的过程的时候,先别想这个结论....

LeetCode刷题(5)【链表】【环形链表II】(C语言)
文章 2022-06-13 来自:开发者社区

LeetCode刷题(4)【移除元素&合并两个有序数组】(C语言)(含图解)

移除元素典型双指针玩法。27. 移除元素 - 力扣(LeetCode) (leetcode-cn.com)我们都会想到这样的解法:从前面依次往后推,是val就将该数据后面的元素依次覆盖上来,但是这样的时间复杂度是O(n²),最坏的结果是一个数组中大部分数据都是val。所以我们想到另一种解法,以空间换时间 ,另开一个数组,把不是val的数据给新的数组,再把新数组的值拷贝回来。空间复杂度是O(n)。....

LeetCode刷题(4)【移除元素&合并两个有序数组】(C语言)(含图解)
文章 2022-06-13 来自:开发者社区

LeetCode刷题(3)【链表】【环形链表】&扩展(C语言)

我的小站——半生瓜のblog环形链表141. 环形链表 - 力扣(LeetCode) (leetcode-cn.com)什么是链表带环:链表的最后一个元素不指向空而指向前面的某个结点。思路:快慢指针,慢指针走一步,快指针走两步,二者先后 进入环内进行追逐,最终会在某个点相遇。/** * Definition for singly-linked list. * struct ListNode ...

文章 2022-06-13 来自:开发者社区

LeetCode刷题(2)【链表】【合链表&链表的中间结点】(C语言)

我的小站——半生瓜のblog快慢指针问题:思路:定义一个快指针和一个慢指针,快指针走到结束的时候,慢指针刚好走到一半。链表的中间结点。876. 链表的中间结点 - 力扣(LeetCode) (leetcode-cn.com)/** * Definition for singly-linked list. * struct ListNode { * int val; * s...

文章 2022-06-13 来自:开发者社区

LeetCode刷题(1)【链表】【反转链表】(C语言)

我的小站——半生瓜のblog (doraemon2.xyz)题目链接——206. 反转链表 - 力扣(LeetCode) (leetcode-cn.com)反转链表思路一:反转指针。本质上就是调转指针的方向。首先我们定义两个指针,一个叫n1,一个叫n2。(Node1,Node2)让n2指向第一个结点,让n1指向空。n2->next指向n1。但是,两个指针是反不转的。因为:这里让n2->...

LeetCode刷题(1)【链表】【反转链表】(C语言)
文章 2022-02-17 来自:开发者社区

LeetCode刷题108-简单-将有序数组转成平衡二叉搜索树(C语言)

文章目录☀️ 前言 ☀️ 作者简介 一、题目描述 二、题目解析 三、代码 ☁️ C语言☁️ 结语 ☀️ 前言 ☀️算法作为极其重要的一点,是大学生毕业找工作的核心竞争力,所以为了不落后与人,开始刷力扣算法题! 作者简介 大家好,我是布小禅,一个尽力让无情的代码变得生动有趣的IT小白,很高兴能偶认识你,关注我,每天坚持学点东西,我们以后就是大佬啦! :❤布小禅❤ 作者专栏:❤Python❤...

LeetCode刷题108-简单-将有序数组转成平衡二叉搜索树(C语言)

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

开发与运维

集结各类场景实战经验,助你开发运维畅行无忧

+关注