最佳数据结构书 [英] Best Data Structures Book
问题描述
您好:
我厌倦了尝试在C#中找到好的集合实现和其他数据结构。所以,我开始实现自己的。
但是,数据结构在C#中是一个完全不同的过程,比较来自C ++的
。我必须更加谨慎地指责
确保不会再将其推入GC世代。
当我开始学习时关于Comparer和类似的课程,我得到了一个
,有点担心我在黑暗中行走。
是否有我需要注意的事项列表在C#中实现数据时,
结构?是否有一本体面的书涵盖了实施
详细信息?
是否可以实现一个有效的双向链接列表而无需
创建迭代器类? (只是问)
到目前为止,我已经实现了一个ArrayList< T>,LinkedList< T>,HashTable< K,
V>,BinarySearchTree< T> ;,堆< T>,堆栈< T>,队列< T>和
PriorityQueue< T>。我以为我会在回去之前停下来变成
a噩梦。
我的HashTable应该是HashTable< T>?
>
谢谢,
Travis
Hello:
I got tired of trying to find good implementations of collections and
other data structures in C#. So, I started implementing my own.
However, data structures is a wholly different process in C# compared
to C++. I have to be a lot more careful about dangling pointers to
make sure things don''t get pushed into further GC generations.
When I started learning about Comparer and similar classes, I got a
little worried that I am walking in the dark.
Is there a list of things I should be aware of when implementing data
structures in C#? Is there a decent book that covers implementation
details?
Is it possible to implement an efficient Doubly-Linked list without
creating an iterator class? (Just asking)
So far I have implemented an ArrayList<T>, LinkedList<T>, HashTable<K,
V>, BinarySearchTree<T>, Heap<T>, Stack<T>, Queue<T>, and
PriorityQueue<T>. I thought I would stop now before going back becomes
a nightmare.
Should my HashTable really be a HashTable<T>?
Thanks,
Travis
推荐答案
je ********** @ gmail.com 写道:
我厌倦了尝试在C#中找到好的集合实现和其他数据结构。所以,我开始实现自己的。
但是,数据结构在C#中是一个完全不同的过程,比较来自C ++的
。我必须更加谨慎地指责
确保不会再将其推入GC世代。
当我开始学习时关于Comparer和类似的课程,我得到了一个
,有点担心我在黑暗中行走。
是否有我需要注意的事项列表在C#中实现数据时,
结构?是否有一本体面的书涵盖了实施
详细信息?
是否可以实现一个有效的双向链接列表而无需
创建迭代器类? (只是问)
到目前为止,我已经实现了一个ArrayList< T>,LinkedList< T>,HashTable< K,
V>,BinarySearchTree< T> ;,堆< T>,堆栈< T>,队列< T>和
PriorityQueue< T>。我以为我会在回去之前停下来变成
一场噩梦。
我的HashTable应该是HashTable< T>?
I got tired of trying to find good implementations of collections and
other data structures in C#. So, I started implementing my own.
However, data structures is a wholly different process in C# compared
to C++. I have to be a lot more careful about dangling pointers to
make sure things don''t get pushed into further GC generations.
When I started learning about Comparer and similar classes, I got a
little worried that I am walking in the dark.
Is there a list of things I should be aware of when implementing data
structures in C#? Is there a decent book that covers implementation
details?
Is it possible to implement an efficient Doubly-Linked list without
creating an iterator class? (Just asking)
So far I have implemented an ArrayList<T>, LinkedList<T>, HashTable<K,
V>, BinarySearchTree<T>, Heap<T>, Stack<T>, Queue<T>, and
PriorityQueue<T>. I thought I would stop now before going back becomes
a nightmare.
Should my HashTable really be a HashTable<T>?
为什么不只使用.NET附带的那些?
Arne
Why not just use those that comes with .NET ??
Arne
9月23日晚上8:19,jehugalea ... @ gmail.com < jehugalea ... @ gmail.com>
写道:
On Sep 23, 8:19 pm, "jehugalea...@gmail.com" <jehugalea...@gmail.com>
wrote:
到目前为止,我已经实现了一个ArrayList< T> ;,LinkedList< T>,HashTable< K,
V>,BinarySearchTree< T>,Heap< T>,Stack< T>,Queue< T>和
PriorityQueue< T>。我以为我会在回去之前停下来变成
一场噩梦。
我的HashTable应该是HashTable< T>?
So far I have implemented an ArrayList<T>, LinkedList<T>, HashTable<K,
V>, BinarySearchTree<T>, Heap<T>, Stack<T>, Queue<T>, and
PriorityQueue<T>. I thought I would stop now before going back becomes
a nightmare.
Should my HashTable really be a HashTable<T>?
我是第二个Arne'的评论,你应该使用带有.NET的
泛型。除了PriorityQueue之外,你还有像Queue,Deque和你拥有的所有东西(b $ b)。他们没有N-ary树(每个节点都有N $ / b $ b分支,不平衡的树),我自己建造的。
RL
I second Arne''s comment, that you should use the generics that come
with .NET. THey have stuff like Queue, Deque, and everything you have
except PriorityQueue. And they don''t have an N-ary tree (tree with N
branches per node, unbalanced), which I built myself.
RL
对于Graph类的实现,以及在其上搜索算法,你可以仔细阅读 http://www.frontiernet.net/~fredm/dps/Contents.htm 。
< je ********** @ gmail.com写信息
新闻:11 **************** ****@r29g2000hsg.googlegrou ps.com ...
For an implementation of a Graph class, and searching algorithms thereon,
you could peruse http://www.frontiernet.net/~fredm/dps/Contents.htm.
<je**********@gmail.comwrote in message
news:11********************@r29g2000hsg.googlegrou ps.com...
您好:
我厌倦了尝试找到好的集合实现和
C#中的其他数据结构。所以,我开始实现自己的。
但是,数据结构在C#中是一个完全不同的过程,比较来自C ++的
。我必须更加谨慎地指责
确保不会再将其推入GC世代。
当我开始学习时关于Comparer和类似的课程,我得到了一个
,有点担心我在黑暗中行走。
是否有我需要注意的事项列表在C#中实现数据时,
结构?是否有一本体面的书涵盖了实施
详细信息?
是否可以实现一个有效的双向链接列表而无需
创建迭代器类? (只是问)
到目前为止,我已经实现了一个ArrayList< T>,LinkedList< T>,HashTable< K,
V>,BinarySearchTree< T> ;,堆< T>,堆栈< T>,队列< T>和
PriorityQueue< T>。我以为我会在回去之前停下来变成
a噩梦。
我的HashTable应该是HashTable< T>?
>
谢谢,
Travis
Hello:
I got tired of trying to find good implementations of collections and
other data structures in C#. So, I started implementing my own.
However, data structures is a wholly different process in C# compared
to C++. I have to be a lot more careful about dangling pointers to
make sure things don''t get pushed into further GC generations.
When I started learning about Comparer and similar classes, I got a
little worried that I am walking in the dark.
Is there a list of things I should be aware of when implementing data
structures in C#? Is there a decent book that covers implementation
details?
Is it possible to implement an efficient Doubly-Linked list without
creating an iterator class? (Just asking)
So far I have implemented an ArrayList<T>, LinkedList<T>, HashTable<K,
V>, BinarySearchTree<T>, Heap<T>, Stack<T>, Queue<T>, and
PriorityQueue<T>. I thought I would stop now before going back becomes
a nightmare.
Should my HashTable really be a HashTable<T>?
Thanks,
Travis
这篇关于最佳数据结构书的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!