Welcome to the Data Structures and Algorithms (DSA) project. DSA attempts to address the omission of certain key data structures and algorithms in the .NET 3.5 framework. In some cases we also provide alternative implementations to that which is offered in the BCL.
DSA is licensed under the Microsoft Public License (Ms-PL).
Installation:Release history:
Each release of DSA contains a single binary:
Note: Dsa.dll is strongy named so it can be installed in the global assembly cache (GAC).
Note: the steps outlined here refer not only to building the source code of a release, but also the source code of any change set.
The source code for the DSA project contains a single Visual Studio 2008 solution, which in turn contains two C# projects:
Now follow the steps below:
Note: if you encounter problems with either of the steps please inform us via the projects homepage.
All change sets are moderatley stable, however if you want to download the most stable bits please download the latest available release.
Release Date: 12/09/08
Release URL:
http://www.codeplex.com/dsa/Release/ProjectReleases.aspx?ReleaseId=13900
Work item no. | Component | Work item title |
2875 | Data Structures | AVL Tree |
5160 | Algorithms | Radix sort (strings) |
5171 | Data Structures | Copy constructors |
5921 | Data Structures | Deque |
Release Date: 30/05/08
Release URL:
http://www.codeplex.com/Release/ProjectReleases.aspx?ProjectName=dsa&ReleaseId=10756
Work item no. | Component | Work item title |
3770 | Data Structures | Priority Queue |
3942 | Algorithms | IsPrime |
3943 | Algorithms | Set permutations |
Release Date: 21/02/08
Release URL:
https://www.codeplex.com/Release/ProjectReleases.aspx?ProjectName=dsa&ReleaseId=9403
Work item no. | Component | Work item title |
2095 | Algorithms | Quick sort |
2518 | Algorithms | Support IList for sorting algorithms |
2873 | Data Structures | UnorderedSet<T> |
2874 | Data Structures | Heap |
2876 | Algorithms | Shell sort |
2877 | Algorithms | Insertion sort |
3108 | Data Structures | Support IList<T> for searching algorithms |
3559 | Algorithms | Repeated word count |
3573 | Algorithms | ToBaseN algorithms (ToBinary, ToOctal, ToHex) |
Fixed:
Work item no. | Component | Work item title |
3088 | Algorithms | Recursive function refactoring |
3179 | Data Structures | Make Intersection and Union methods generic |
Release Date: 24/12/07
Release URL:
https://www.codeplex.com/Release/ProjectReleases.aspx?ProjectName=dsa&ReleaseId=7657
Work item no. | Component | Work item title |
1770 | Algorithms | Probability search |
1790 | Algorithms | Power |
1802 | Algorithms | Greatest common denominator |
1803 | Algorithms | Reverse words |
1862 | Data Structures | Set |
1907 | Algorithms | Sequential search |
2094 | Data Structures | IComparer - user defined implementations |
2096 | Algorithms | Merge sort |
2820 | Algorithms | Merge ordered |
Fixed:
Work item no. | Component | Work item title |
1827 | Data Structures | Perf Issue: ArrayList |
Release Date: 18/10/07
Release URL:
https://www.codeplex.com/Release/ProjectReleases.aspx?ProjectName=dsa&ReleaseId=7291
Work item no. | Component | Work item title |
1550 | Data Structures | BinaryTreeNode<T> |
1570 | Algorithms | Bubblesort - sort asc or desc |
1551 | Data Structures | BinarySearchTree<T> |
Fixed:
Work item no. | Component | Work item title |
1906 | Data Structures | default items are not returned when calling GetEnumerator on ArrayList |
2142 | Data Structures | ArrayList |
Release Date: 30/09/07
Release URL:
https://www.codeplex.com/Release/ProjectReleases.aspx?ProjectName=dsa&ReleaseId=7405
Work item no. | Component | Work item title |
1552 | Algorithms | Bubblesort |
1553 | Algorithms | Fibonacci |
1584 | Algorithms | Factorial |
Release Date: 21/09/07
Release URL:
https://www.codeplex.com/Release/ProjectReleases.aspx?ProjectName=dsa&ReleaseId=7078
Work item no. | Component | Work item title |
1334 | Algorithms | IsPalindrome |
1337 | Algorithms | WordCount |
1457 | Algorithms | Strip |
1501 | Data Structures | ArrayListCollection(Of T) - set default capacity |
Fixed:
Work item no. | Component | Work item title |
1450 | Algorithms | IsPalindrome - whitespace and punctuation not ignored Title is required |
Release Date: 13/09/07
Release URL:
https://www.codeplex.com/Release/ProjectReleases.aspx?ProjectName=dsa&ReleaseId=6894
Work item no. | Component | Work item title |
1335 | Algorithms | Any |
1336 | Algorithms | Reverse |
1338 | Data Structures | ArrayList<T> |
1339 | Data Structures | DoublyLinkedList<T> |
Fixed:
Work item no. | Component | Work item title |
1401 | Data Structures | ArrayListCollection(Of T) - Setting value of previously unset index does not increment count Title is required |
Release Date: 07/09/07
Release URL:
https://www.codeplex.com/Release/ProjectReleases.aspx?ProjectName=dsa&ReleaseId=6683
Work item no. | Component | Work item title |
1048 | Data Structures | SinglyLinkedList<T> |
1075 | Data Structures | Queue<T> |
1249 | Data Structures | Stack<T> |
1291 | DSA | VS Debugging Visualizer |
Fixed:
Work item no. | Component | Work item title |
1166 | Data Structures | CollectionDebugView - Items not appearing in Locals window Title is required |