【发布时间】:2016-04-09 10:52:13
【问题描述】:
我是编程新手,每个人都在讨论数组。我已经通过 C# 中的数组并在控制台中进行了尝试。如果有人能说我在实时软件开发中我们究竟在哪里使用数组。我知道这是一个基本问题,但无法弄清楚。在此先感谢
【问题讨论】:
-
你需要阅读更多关于data structures
-
我的回答不够快...我将其作为评论留下:数据结构的重点是提出存储相同数据集合的不同方法,以便不同的操作效率更高,具体取决于使用模式。一旦您将现实世界的概念抽象为模型(例如将 Person 抽象为
Person类),这是一个常见问题。而不是每次我们在不同类型中重用它们时都从头开始重新编写数据结构库(在 C# 泛型中帮助我们实现这一点)。 -
数组和链表提供了数据结构的基本构建块。数组将对象的类型(或对同一类型对象的引用)全部存储在内存中的一行中。它具有恒定的 (O(1)) 访问时间来找到一个元素,但是线性 (O(n)) 插入时间来将一个元素放在前面。链表正好相反——你只存储对第一项的引用。找到一个元素通常需要线性时间,但将元素放在前面需要恒定的时间。
-
当你将这两个概念结合在一起时,你可以得到一些强大的混合数据结构——哈希集(我认为它们主要是链表数组)和树(我认为它们主要是链表数组),找到快速操作的方法。除了任意插入和读取之外,还需要考虑其他操作。
-
您应该查看数据结构书籍、课程或网站,以更全面地理解所有这些概念。除非您要实现这些库,否则学习主要数据结构及其空间和时间复杂性可能比它们的实现更重要,这样您就知道何时使用它们以及它将如何影响代码的性能。
标签: c# asp.net arrays webforms