又是难啃的一天
Day 14|栈+单链表
今天上午讲了栈,说实话学完队列再看栈就轻松不少,两者结构很像,区别就是栈是先进后出(LIFO),就像往盒子里放书,最后放的最先拿出来。入栈出栈都在栈顶操作,逻辑比队列还简单一点,理解起来没什么压力 😄
下午才是今天的重难点——单链表。和之前学的顺序表、队列差距挺大的,顺序表底层是连续内存,靠数组+指针管理;单链表是靠一个个节点串起来的,每个节点存数据+指向下一个节点的指针,内存不连续,靠指针跳着访问。今天讲了一堆操作:遍历输出、释放整个链表、不同位置的插入(头插、尾插、中间插)、不同位置的删除、还有链表反转。内容量真的不小 🤯
说实话大学的时候学过这些内容,但当时确实没好好听,考试都是临时抱佛脚过的,脑子里基本没留下东西。今天听老师从头到尾讲了一遍,尤其是插入和删除的时候指针操作的顺序——先连后断还是先断后连,搞错了就会丢节点或者段错误,这些细节之前完全没注意过。现在算是真正理解了,不是停留在"知道有这个东西"的层面。
课后又在 Vim 和 Codex 里各敲了两遍,第一遍照着写,第二遍自己默写,熟悉了不少。链表这东西光看代码是没用的,必须自己动手画图+敲代码,把指针怎么指的搞清楚才行。今天感觉不错,继续肝💪
蜗牛学苑 嵌入式开发 蜗牛学苑嵌入式 嵌入式学习 C语言 数据结构 学习打卡


