这可能是一个愚蠢的问题(在MSDN等网站上都可以找到答案),但也许你们中的一些人能够帮助我筛选大量信息。
我需要了解C#中常见数据结构和算法的具体实现细节。例如,我需要知道链表是如何处理和表示的,它们的方法是如何定义的。
是否有一个好的集中化文档来源(包含代码),或者我应该自己重建?你是否曾经需要了解这些具体细节来决定使用什么?
谢谢!
这可能是一个愚蠢的问题(在MSDN等网站上都可以找到答案),但也许你们中的一些人能够帮助我筛选大量信息。
我需要了解C#中常见数据结构和算法的具体实现细节。例如,我需要知道链表是如何处理和表示的,它们的方法是如何定义的。
是否有一个好的集中化文档来源(包含代码),或者我应该自己重建?你是否曾经需要了解这些具体细节来决定使用什么?
谢谢!
如果你真的想学习它,试着自己动手做一下。
在谷歌上搜索链表会给你很多相关结果和示例代码供参考。维基百科也是一个很好的资源。
List<T>
的操作是由运行时进行了优化。 - Mehrdad Afshari这取决于编程语言。大多数语言现在都内置了非常基础的功能,但这并不意味着它们的实现方式相同。相同名称的对象--C#中的LinkedList与Java或C++中的LinkedList完全不同。甚至String库也是不同的。例如,C#被认为在每次为字符串分配新值时创建一个新的String对象......当您第一次在C#中使用子字符串时,这会迅速让您的程序崩溃,这是您很快就会学到的问题。
因此,对于你的问题,答案非常复杂,因为我不确定你想要什么。如果你只是要教授一个算法和数据结构的通用版本,你可以在不涉及上述问题的情况下展示它们。你只需要选择、查找、阅读特定类型的实现方式。例如,对于LinkedList,您需要能够实例化列表、销毁列表、复制列表、在列表的某个位置添加(通常是前面/后面)或从列表中删除等等。您还可以根据需要添加尽可能多的方法。