
数据结构
文章平均质量分 85
数据结构学习
我爱吃福鼎肉片
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【数据结构】——链表经典OJ(leetcode)
如果反转前半部分,那么找中间值的条件就为fast->next && fast->next->next不为空,我选择反转后半部分,相对更容易理解。当fast和slow相遇后,我们将meet点设为新的起点,然后head点和meet点往后走,终究会相遇,相遇的点就是环的入口。这题需要注意返回新链表的头节点,所以新链表创建两个节点来记录头和尾节点最方便。这题两个选择,反转前半部分再对比,或者反转后半部分再对比。先看代码,这题的代码很简单,但是要明白所以然。先记录链表长度,再找到要删除节点的上一个节点。原创 2024-06-26 16:12:49 · 786 阅读 · 4 评论 -
【数据结构】——二叉树的创建
2.遇到第一个空节点就开始判断,如果后面全是空,那就是完全二叉树,如果后面还有非空,就不是完全二叉树。再层序遍历之前,我们先把队列的val设置为树节点的指针。希望这篇博客对你有所帮助!1.层序遍历走,空也进队列。原创 2024-06-03 15:53:46 · 607 阅读 · 6 评论 -
【数据结构】二叉树和堆
二叉树,作为一种重要的数据结构,由节点组成,每个节点可以有两个子节点,通常称为左子节点和右子节点。二叉树是有序的,树中包含的各个节点的度不能超过2,即只能是0、1或者2。特殊二叉树满二叉树一个二叉树,如果每一个层的结点数都达到最大值,则这个二叉树就是满二叉树。也就是说,如果一个二叉树的层数为K,且结点总数是 2的k次方-1,则它就是满二叉树。完全二叉树完全二叉树,作为一种效率很高的数据结构,是由满二叉树衍生出来的。原创 2024-05-26 17:47:17 · 1071 阅读 · 10 评论 -
【数据结构】——常见排序
在开始之前先准备一个交换数据的函数,排序会经常用到。原创 2024-06-15 18:09:47 · 1026 阅读 · 4 评论 -
数据结构——时间复杂度和空间复杂度
我们先要知道什么是算法算法(Algorithm)是指用来操作数据、解决程序问题的一组方法。对于同一个问题,使用不同的算法,也许最终得到的结果是一样的,但在过程中消耗的资源和时间却会有很大的区别。如何衡量一个算法的好坏呢,一般是从时间和空间两个维度来衡量,即时间复杂度和空间复杂度。通俗一点的说,我的代码实现这个功能使用的时间是30毫秒,占用内存20M别人是1秒,占用内存40M时间复杂度的定义:在计算机科学中,算法的时间复杂度是一个函数,它定量描述了该算法的运行时间。原创 2024-05-17 21:24:55 · 863 阅读 · 5 评论