返回顶部
关闭软件导航
位置:首页 > 资讯 > 其他>100行C代码终端打印树形结构
100行C代码终端打印树形结构

  讲究套路之前,先来回答三个问题。

  为什么要打印树形结构

  树形结构是算法里很常见的一种数据结构,从二叉树到多叉树,还有很多变种。很多涉及到算法的工作,就需要程序员自己手动实现树形结构无限层次树形笔记本,但出于结构本身复杂性,不太容易做对,需要一种调试工具来检测正确性。一般的调试手段无非就是加打无限层次树形笔记本印,GDB上断点,写测试用例等,但这些局部以及外部的调试信息对于数据结构的整体把握提供的帮助十分有限,经验不足的程序员甚至可能会迷失在一大片调试信息的汪洋大海中找不着北。理解算法本身是一回事,自己动手是另一回事了,这跟我们理解算法的思维方式有关——对于数据结构而言,我们的感知是形象化的,比方脑海中自动出现一幅图,动态的插入删除,每个节点是如何变动的,平衡的时候局部是怎么旋转的等等,对智力正常的人来说不是什么难事无限层次树形笔记本。但对机器来说,它要面对的是只是一堆基于状态的指令而已,将人的形象思维转化为状态机,本身是一件艰难的工作,因为我们很难感知并存储这么多状态,这就需要工具来辅助,最好是画出整个形状结构,以直观地提醒我们哪里出错了,所谓“观其形无限层次树形笔记本,见其义”。

  我们知道Linux有个tree命令用来打印树状目录列表,可以将某个目录下的所有文件和子目录一览无遗,非常直观,本文可以说就是为了实现这个效果,并给出源码实现。

如果您觉得 100行C代码终端打印树形结构 这篇文章对您有用,请分享给您的好友,谢谢
文章地址:https://www.tianxianmao.com/article/other/xCdmzddysxjg.html
解放双手无尽可能,有问题添加天线猫微信