gpt4 book ai didi

ruby - 高级语言是否使用数据结构?

转载 作者:数据小太阳 更新时间:2023-10-29 07:09:03 27 4
gpt4 key购买 nike

我目前还在上学,正在上一门关于用 C++ 实现数据结构的类(class)。在业余时间,我喜欢使用“高级”语言(主要是 Ruby 和一些 c#)进行编程。

既然这些高级语言为你管理内存,你会用数据结构做什么?我可以理解对队列和堆栈的需求,但是您需要在 Ruby 中使用二叉树吗?还是 2-3-4 树?为什么?

谢谢。

最佳答案

So since these higher level languages manage the memory for you, what would you use data structures for?

使用数据结构的主要原因与垃圾收集无关。但它是以某种方式有效的方式存储数据。所以最重要的是你如何组织数据。这正是语言无法自动为您找出的内容。

当然,高级语言会附带一些预加载的数据结构(并且当提供这些预加载的数据结构时,您应该 100% 使用它们,而不是自己制作),但并非所有数据结构都是前提是您可能需要。

数据结构以某种方式组织内存存储,以便可以实现在其上运行的算法,从而提供高效的结果。

对于大多数任务,您不需要实现自己的数据结构。但这完全取决于您编写的代码。

I can understand the need for queues and stacks but would you ever need to use a binary tree in Ruby?

有很多使用二叉树的例子,但在日常项目中并不常见,例如你可能需要实现哈夫曼编码。

Other data structures可用于节省空间和使用 trie 的快速查找,或者您可能需要使用 btree 存储大量数据以进行快速查找。几种数据结构具有特定的用途,并针对不同的事物进行了优化。语言是否现代以及是否具有垃圾收集功能都不会改变这一点。

不过,趋势是自定义实现的数据结构编码较少,考虑较少。常见的算法也有类似的争论。在更现代的语言中,如 LINQ,您只需指定排序即可。你实际上并没有说如何排序。

关于ruby - 高级语言是否使用数据结构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/675892/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com