微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在不使用python中的类的情况下实现数据结构?

如何解决如何在不使用python中的类的情况下实现数据结构?

我正在学习和练习Python。我对类中的概念感到有些害怕,并且我一直在想如何实现链接列表,图形和树之类的数据结构。

我从许多人那里听说,这些是访谈和编码竞赛中要求的最重要的数据结构。

所以我的问题是,有没有一种方法可以在不使用类的情况下而仅通过使用预定义的数据结构(如列表,字典等)来实现所有上述数据结构?

解决方法

如果我们要学究的话,python中的所有内容都是一个类,因此您无法避免使用它们。如果您担心创建自己的类所需的一切,例如应该在何处定义哪些方法,那就是我们可以关注的事情。实际上,对于任何给定类的界限还没有普遍的共识,像C和Go这样的流行程序甚至没有它们。

一种替代方法是仅使用dict来保存键/值对。大致而言,类只是具有相关方法的字典。字典键可以容纳各种各样的对象(只要它们是可哈希的),而类属性必须是字符串,并且必须进一步限制以按字典顺序适合程序。例如,链接列表可以是{ "next object":obj,"previous object":obj,"item":obj },甚至可以是列表[obj,obj,obj],您的代码会记住这些索引是什么。

但是类非常方便,尤其是在实现其他数据结构时。操纵链接列表节点的方法应在该节点本身上,这是有道理的。当避免使用类是合理的数据结构时,没有什么可以避免的。

有很多模块可以实现链表,树和图。除非这是学习数据结构的练习,否则花一些时间与您最喜欢的搜索引擎一起是所有选项中的最佳选择。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。