施工第62篇:数组转链表 完整动画演示

Python与算法社区

第 452 篇原创,干货满满

三步加星标

01

02

03

三步加星标

你好,我是 zhenguo

我正在按照下面施工计划往前推进,标记小红旗部分已经讲完,你可以从这里:施工专题已完成 60 篇 汇总 找到过往推送文章

今晚总结基础算法模块里的链表,链表作为最最基础的计算机数据结构之一,有着广泛的应用,这几天我花很多时间打磨了一个《数组转链表》的短视频,发布在视频号中,欢迎观看:

别看这么一个不起眼的几十秒的短视频,制作起来却花费很长时间,因为使用专业的动画软件AE,一边摸索软件使用,一边探索如何更好解释算法,希望真正地帮助到你,如果可以,帮助视频点个赞。


下面我逐步解释数组转链表的完整过程,结合刚才制作好的动画。首先解释问题是什么:

想要输出的链表示意图如下:

算法的伪代码如下所示:

下面每个迭代步,逐个分析。

第一步,head 指向创建的第一个节点:

第二步,同时让tmp指针指向此节点:

第三步,进入遍历,并创建第二个节点,同时令第一个节点指向第二个节点,如下所示,同时 tmp 指向此节点,至此完成第二个节点的串接:

依次串接第三个节点:

串接第四个节点:

这步中,同时让 tmp 指向第四个节点:

同理,完成最后一个节点的串接:

至此数组a转化为链表,全部完成!最终形成的链表,表头为head,表尾为tmp

最后,欢迎长按2秒关注我的视频号:程序员zhenguo,我正在打造精美的教学短视频,前期已经有十几期可视化作品,目前正在陆续推出:程序员必备算法,Python小例子,数据分析等,敬请期待!希望在你学习Python与算法的道路上,真正帮助到你。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值