
数据结构
文章平均质量分 94
数据结构
一语成称
我是一语成称,称心如意的称
展开
-
想快速入门二叉树?一篇文章打通你任督二脉
如果叶子结点个数为n0,度为2的非叶子结点个数为n2,则n0 = n2 + 1。(度为0的结点数总比度为2的结点数多一个)有n个结点,按从上到下、左到右的顺序编号,想知道序号i的结点有多少,按如下规则分辨,2. 若规定只有根结点的二叉树深度为1,则深度为k的二叉树。有n个结点,则其深度为log2(n + 1) 上取整。同前序遍历一样,有两种解法,思路相同,我只写第一种。同前序遍历一样,有两种解法,思路相同,我只写第一种。公式:二叉树的层数为K,节点总数为2^k -1。二叉树中又有两种特殊的二叉树,原创 2025-02-02 19:39:30 · 1184 阅读 · 0 评论 -
2. 快速掌握顺序表的模拟实现
【代码逻辑】原创 2024-07-15 17:30:31 · 907 阅读 · 0 评论 -
快速掌握单链表和双链表(含面试题)
【概念】链表底层是一个个串起来的节点,其物理(内存)上不连续,逻辑上连续;链表是通过节点【与顺序表的区别】比数组多了一个变量来计数;原因是,按照常规思路计算数组大小(遇到0终止),若数组中有一个值就是0呢?所以用变量计数,插入一个数据,负责计数的变量就++;【链表类型】链表类型一共有9种,但只重点掌握两种即可分别是“单向不带头节点的非循环链表(SingleList)”和“双向不带头节点的非循环链表(LinkList)”【小经验】想要遍历整个链表,while(cur!=null)原创 2024-07-24 16:06:12 · 1259 阅读 · 0 评论 -
快速掌握栈和队列(含面试题)
【图示】【概念】栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO(Last In First Out)的原则。压栈:栈的插入操作叫做进栈/压栈/入栈,入数据在栈顶。出栈:栈的删除操作叫做出栈。出数据在栈顶生活中栈的应用:装填子弹时,先填进去的子弹最后发射【总结】栈是一种先进后出的数据结构,底层由数组和一个计数器组成(同顺序表)栈,逻辑上先进后出,物理上连续。原创 2024-11-17 23:46:45 · 1057 阅读 · 0 评论