<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="http://code.msdn.microsoft.com/rss.xsl"?><rss version="2.0"><channel><title>Anagram Free Finder - C# Anagrams Fast With GUI</title><link>http://code.msdn.microsoft.com/anagrams/Project/ProjectRss.aspx</link><description>Page for an extremely fast anagram program that is built with the .NET framework. Will find all anagrams contained within any string--of the same length or shorter. Displays results instantly and u...</description><item><title>NEW POST: localization</title><link>http://code.msdn.microsoft.com/anagrams/Thread/View.aspx?ThreadId=859</link><description>&lt;div class="wikidoc"&gt;
A very nice program. But don't work with my native language Russian.&lt;br /&gt;Can you help me? &lt;br /&gt;
&lt;/div&gt;</description><author>tehnolog</author><pubDate>Tue, 28 Oct 2008 00:44:56 GMT</pubDate><guid isPermaLink="false">NEW POST: localization 20081028A</guid></item><item><title>UPDATED WIKI: Home</title><link>http://code.msdn.microsoft.com/anagrams/Wiki/View.aspx?title=Home&amp;version=13</link><description>&lt;div class="wikidoc"&gt;
Page for an extremely fast anagram program that is built with the .NET framework. Will find all anagrams contained within any string--of the same length or shorter. Displays results instantly and uses little memory. Very simple and easy to use.
&lt;br /&gt; &lt;br /&gt;&lt;h1&gt;
Update October 22 2008
&lt;/h1&gt;Made algorithm 20% faster by using bitmasks more. Uses DeBruijn positions to find first set bit and letter positions. Times went down from 312 to 250. This is a significant improvement to the implementation.&lt;br /&gt; &lt;br /&gt;&lt;h1&gt;
Update October 20 2008
&lt;/h1&gt;Use custom Comparison to sort by length instead of LINQ. Much faster sorting. The program probably only runs a tiny bit faster though. Not much else improved.&lt;br /&gt; &lt;br /&gt;&lt;h1&gt;
Update July 27 2008
&lt;/h1&gt;Big improvements in memory usage. Replaced jagged arrays with a big flat one for 2 MB less memory usage. Entire app now takes 6 MB instead of 8 MB. The DAWG is started up 3.3 times faster as well, for an average of 17 ms instead of 58 ms. (That's an average of many runs.) No lookup performance improvements.&lt;br /&gt; &lt;br /&gt;&lt;h1&gt;
Update July 2 2008
&lt;/h1&gt;Optimizations with unsafe pointers for startup. DAWG is initialized 57% faster. No big enhancements, just small fixes.&lt;br /&gt;May start up as much as 50% faster! See my new article &lt;a href="http://dotnetperls.com/Content/Unsafe-Parse.aspx" class="externalLink"&gt;http://dotnetperls.com/Content/Unsafe-Parse.aspx&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; for how it was made faster.&lt;br /&gt; &lt;br /&gt;&lt;h1&gt;
Update June 12 2008
&lt;/h1&gt;I made the algorithm over twice as fast, so it takes 0.4 milliseconds to find all the anagrams of a common 6 letter word. It also uses 20% less RAM (2 MB less). Also it sorts all the results first by longest to shortest, and then alphabetically (a double sort). Download EXE and source now.&lt;br /&gt; &lt;br /&gt;&lt;h1&gt;
Anagram Free Finder
&lt;/h1&gt;This is the source code and application for an anagram finding program in C#. It will instantly find all words contained in your string of letters and display them from longest to shortest.&lt;br /&gt; &lt;br /&gt;&lt;h2&gt;
Requirements
&lt;/h2&gt;Anagram Free Finder runs on .NET 3.5 and requires that framework. The source is built with Visual Studio 2008 SP1 beta.&lt;br /&gt;&lt;h2&gt;
Screenshot
&lt;/h2&gt;This is a picture of Anagram Free Finder. It shows that you can type into the textbox and the anagrams will instantly display on the top part.&lt;br /&gt;&lt;img src="http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=anagrams&amp;amp;DownloadId=2324" alt="anagram2.png" /&gt;&lt;br /&gt;&lt;img src="http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=anagrams&amp;amp;DownloadId=2323" alt="anagram1.png" /&gt;&lt;br /&gt;&lt;h2&gt;
Usage
&lt;/h2&gt;Each letter you type in the bottom textbox will update the screen with all the anagram words. This occurs instantly and there is no waiting.&lt;br /&gt;&lt;h1&gt;
Implementation
&lt;/h1&gt;The anagram finder uses a sophisticated directed acyclic word graph structure to store the words. It stores about 160,000 words. The download is about 500 KB.&lt;br /&gt;&lt;h2&gt;
Comparison
&lt;/h2&gt;Many anagram finders are slow or show lots of ads or even have malware in them. This is open-source code and it is written in entirely managed C#. There is no native code here.&lt;br /&gt;&lt;h2&gt;
Windows Forms
&lt;/h2&gt;The program uses Windows Forms so it looks like a standard program. It won't make you cringe every time you look at it because it is ugly.&lt;br /&gt;&lt;h2&gt;
Startup
&lt;/h2&gt;Starting up the program is nearly instant assuming the .NET framework is loaded. The program reads about 1 MB of data when it starts up and puts it in two arrays.&lt;br /&gt;&lt;h2&gt;
1985 Technology
&lt;/h2&gt;The data structure in this program was developed in 1985 and is called a directed acyclic word graph. This structure enables words to share prefixes and suffixes in the tree. It uses about 60% less memory than a regular tree.&lt;br /&gt;&lt;h2&gt;
Lines of Code
&lt;/h2&gt;This program has about 400 lines of code that are commented. It was written in about 4 hours, and builds on existing technology such as the DAWG that I developed previously.&lt;br /&gt;&lt;h1&gt;
Conclusion
&lt;/h1&gt;This anagram finder is better than most of them on the Internet, either on web pages or as downloads. It is open-source and therefore doesn't contain any bad things. It is a 400 line C# program that uses complicated technology to process anagrams extremely fast and use little memory.&lt;br /&gt;&lt;h1&gt;
About
&lt;/h1&gt;This program is described in a more detailed way in my new article &lt;a href="http://dotnetperls.com/Content/Anagram-Windows.aspx" class="externalLink"&gt;http://dotnetperls.com/Content/Anagram-Windows.aspx&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; Anagram Open Source. &lt;b&gt;Sam Allen&lt;/b&gt; developed this program and wrote 100% of the code. He offers more information at his website &lt;a href="http://dotnetperls.com/" class="externalLink"&gt;http://dotnetperls.com/&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; and will be providing updates and more in the future.&lt;br /&gt;
&lt;/div&gt;</description><author>smallenucd</author><pubDate>Thu, 23 Oct 2008 06:09:01 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Home 20081023A</guid></item><item><title>CREATED RELEASE: Anagram Free Oct 2008 EXE (Oct 20, 2008)</title><link>http://code.msdn.microsoft.com/anagrams/Release/ProjectReleases.aspx?ReleaseId=1672</link><description></description><author></author><pubDate>Tue, 21 Oct 2008 05:43:41 GMT</pubDate><guid isPermaLink="false">CREATED RELEASE: Anagram Free Oct 2008 EXE (Oct 20, 2008) 20081021A</guid></item><item><title>UPDATED WIKI: Home</title><link>http://code.msdn.microsoft.com/anagrams/Wiki/View.aspx?title=Home&amp;version=12</link><description>&lt;div class="wikidoc"&gt;
Page for an extremely fast anagram program that is built with the .NET framework. Will find all anagrams contained within any string--of the same length or shorter. Displays results instantly and uses little memory. Very simple and easy to use.
&lt;br /&gt; &lt;br /&gt;&lt;h1&gt;
Update October 20 2008
&lt;/h1&gt;Use custom Comparison to sort by length instead of LINQ. Much faster sorting. The program probably only runs a tiny bit faster though. Not much else improved.&lt;br /&gt; &lt;br /&gt;&lt;h1&gt;
Update July 27 2008
&lt;/h1&gt;Big improvements in memory usage. Replaced jagged arrays with a big flat one for 2 MB less memory usage. Entire app now takes 6 MB instead of 8 MB. The DAWG is started up 3.3 times faster as well, for an average of 17 ms instead of 58 ms. (That's an average of many runs.) No lookup performance improvements.&lt;br /&gt; &lt;br /&gt;&lt;h1&gt;
Update July 2 2008
&lt;/h1&gt;Optimizations with unsafe pointers for startup. DAWG is initialized 57% faster. No big enhancements, just small fixes.&lt;br /&gt;May start up as much as 50% faster! See my new article &lt;a href="http://dotnetperls.com/Content/Unsafe-Parse.aspx" class="externalLink"&gt;http://dotnetperls.com/Content/Unsafe-Parse.aspx&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; for how it was made faster.&lt;br /&gt; &lt;br /&gt;&lt;h1&gt;
Update June 12 2008
&lt;/h1&gt;I made the algorithm over twice as fast, so it takes 0.4 milliseconds to find all the anagrams of a common 6 letter word. It also uses 20% less RAM (2 MB less). Also it sorts all the results first by longest to shortest, and then alphabetically (a double sort). Download EXE and source now.&lt;br /&gt; &lt;br /&gt;&lt;h1&gt;
Anagram Free Finder
&lt;/h1&gt;This is the source code and application for an anagram finding program in C#. It will instantly find all words contained in your string of letters and display them from longest to shortest.&lt;br /&gt; &lt;br /&gt;&lt;h2&gt;
Requirements
&lt;/h2&gt;Anagram Free Finder runs on .NET 3.5 and requires that framework. The source is built with Visual Studio 2008 SP1 beta.&lt;br /&gt;&lt;h2&gt;
Screenshot
&lt;/h2&gt;This is a picture of Anagram Free Finder. It shows that you can type into the textbox and the anagrams will instantly display on the top part.&lt;br /&gt;&lt;img src="http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=anagrams&amp;amp;DownloadId=2324" alt="anagram2.png" /&gt;&lt;br /&gt;&lt;img src="http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=anagrams&amp;amp;DownloadId=2323" alt="anagram1.png" /&gt;&lt;br /&gt;&lt;h2&gt;
Usage
&lt;/h2&gt;Each letter you type in the bottom textbox will update the screen with all the anagram words. This occurs instantly and there is no waiting.&lt;br /&gt;&lt;h1&gt;
Implementation
&lt;/h1&gt;The anagram finder uses a sophisticated directed acyclic word graph structure to store the words. It stores about 160,000 words. The download is about 500 KB.&lt;br /&gt;&lt;h2&gt;
Comparison
&lt;/h2&gt;Many anagram finders are slow or show lots of ads or even have malware in them. This is open-source code and it is written in entirely managed C#. There is no native code here.&lt;br /&gt;&lt;h2&gt;
Windows Forms
&lt;/h2&gt;The program uses Windows Forms so it looks like a standard program. It won't make you cringe every time you look at it because it is ugly.&lt;br /&gt;&lt;h2&gt;
Startup
&lt;/h2&gt;Starting up the program is nearly instant assuming the .NET framework is loaded. The program reads about 1 MB of data when it starts up and puts it in two arrays.&lt;br /&gt;&lt;h2&gt;
1985 Technology
&lt;/h2&gt;The data structure in this program was developed in 1985 and is called a directed acyclic word graph. This structure enables words to share prefixes and suffixes in the tree. It uses about 60% less memory than a regular tree.&lt;br /&gt;&lt;h2&gt;
Lines of Code
&lt;/h2&gt;This program has about 400 lines of code that are commented. It was written in about 4 hours, and builds on existing technology such as the DAWG that I developed previously.&lt;br /&gt;&lt;h1&gt;
Conclusion
&lt;/h1&gt;This anagram finder is better than most of them on the Internet, either on web pages or as downloads. It is open-source and therefore doesn't contain any bad things. It is a 400 line C# program that uses complicated technology to process anagrams extremely fast and use little memory.&lt;br /&gt;&lt;h1&gt;
About
&lt;/h1&gt;This program is described in a more detailed way in my new article &lt;a href="http://dotnetperls.com/Content/Anagram-Windows.aspx" class="externalLink"&gt;http://dotnetperls.com/Content/Anagram-Windows.aspx&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; Anagram Open Source. &lt;b&gt;Sam Allen&lt;/b&gt; developed this program and wrote 100% of the code. He offers more information at his website &lt;a href="http://dotnetperls.com/" class="externalLink"&gt;http://dotnetperls.com/&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; and will be providing updates and more in the future.&lt;br /&gt;
&lt;/div&gt;</description><author>smallenucd</author><pubDate>Tue, 21 Oct 2008 05:41:59 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Home 20081021A</guid></item><item><title>UPDATED RELEASE: Anagram-EXE-July27 (Jul 27, 2008)</title><link>http://code.msdn.microsoft.com/anagrams/Release/ProjectReleases.aspx?ReleaseId=1322</link><description></description><author></author><pubDate>Tue, 29 Jul 2008 21:49:05 GMT</pubDate><guid isPermaLink="false">UPDATED RELEASE: Anagram-EXE-July27 (Jul 27, 2008) 20080729P</guid></item><item><title>CREATED RELEASE: AnagramFree-July27-SOURCE (Jul 27, 2008)</title><link>http://code.msdn.microsoft.com/anagrams/Release/ProjectReleases.aspx?ReleaseId=1324</link><description></description><author></author><pubDate>Sun, 27 Jul 2008 23:01:22 GMT</pubDate><guid isPermaLink="false">CREATED RELEASE: AnagramFree-July27-SOURCE (Jul 27, 2008) 20080727P</guid></item><item><title>CREATED RELEASE: AnagramFree-July27-SOURCE (Jul 27, 2008)</title><link>http://code.msdn.microsoft.com/anagrams/Release/ProjectReleases.aspx?ReleaseId=1323</link><description></description><author></author><pubDate>Sun, 27 Jul 2008 22:58:56 GMT</pubDate><guid isPermaLink="false">CREATED RELEASE: AnagramFree-July27-SOURCE (Jul 27, 2008) 20080727P</guid></item><item><title>CREATED RELEASE: Anagram-EXE-July27 (Jul 27, 2008)</title><link>http://code.msdn.microsoft.com/anagrams/Release/ProjectReleases.aspx?ReleaseId=1322</link><description></description><author></author><pubDate>Sun, 27 Jul 2008 22:56:26 GMT</pubDate><guid isPermaLink="false">CREATED RELEASE: Anagram-EXE-July27 (Jul 27, 2008) 20080727P</guid></item><item><title>UPDATED WIKI: Home</title><link>http://code.msdn.microsoft.com/anagrams/Wiki/View.aspx?title=Home&amp;version=11</link><description>&lt;div class="wikidoc"&gt;
Page for an extremely fast anagram program that is built with the .NET framework. Will find all anagrams contained within any string--of the same length or shorter. Displays results instantly and uses little memory. Very simple and easy to use.
&lt;br /&gt; &lt;br /&gt;&lt;h1&gt;
Update July 27 2008
&lt;/h1&gt;Big improvements in memory usage. Replaced jagged arrays with a big flat one for 2 MB less memory usage. Entire app now takes 6 MB instead of 8 MB. The DAWG is started up 3.3 times faster as well, for an average of 17 ms instead of 58 ms. (That's an average of many runs.) No lookup performance improvements.&lt;br /&gt; &lt;br /&gt;&lt;h1&gt;
Update July 2 2008
&lt;/h1&gt;Optimizations with unsafe pointers for startup. DAWG is initialized 57% faster. No big enhancements, just small fixes.&lt;br /&gt;May start up as much as 50% faster! See my new article &lt;a href="http://dotnetperls.com/Content/Unsafe-Parse.aspx" class="externalLink"&gt;http://dotnetperls.com/Content/Unsafe-Parse.aspx&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; for how it was made faster.&lt;br /&gt; &lt;br /&gt;&lt;h1&gt;
Update June 12 2008
&lt;/h1&gt;I made the algorithm over twice as fast, so it takes 0.4 milliseconds to find all the anagrams of a common 6 letter word. It also uses 20% less RAM (2 MB less). Also it sorts all the results first by longest to shortest, and then alphabetically (a double sort). Download EXE and source now.&lt;br /&gt; &lt;br /&gt;&lt;h1&gt;
Anagram Free Finder
&lt;/h1&gt;This is the source code and application for an anagram finding program in C#. It will instantly find all words contained in your string of letters and display them from longest to shortest.&lt;br /&gt; &lt;br /&gt;&lt;h2&gt;
Requirements
&lt;/h2&gt;Anagram Free Finder runs on .NET 3.5 and requires that framework. The source is built with Visual Studio 2008 SP1 beta.&lt;br /&gt;&lt;h2&gt;
Screenshot
&lt;/h2&gt;This is a picture of Anagram Free Finder. It shows that you can type into the textbox and the anagrams will instantly display on the top part.&lt;br /&gt;&lt;img src="http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=anagrams&amp;amp;DownloadId=2324" alt="anagram2.png" /&gt;&lt;br /&gt;&lt;img src="http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=anagrams&amp;amp;DownloadId=2323" alt="anagram1.png" /&gt;&lt;br /&gt;&lt;h2&gt;
Usage
&lt;/h2&gt;Each letter you type in the bottom textbox will update the screen with all the anagram words. This occurs instantly and there is no waiting.&lt;br /&gt;&lt;h1&gt;
Implementation
&lt;/h1&gt;The anagram finder uses a sophisticated directed acyclic word graph structure to store the words. It stores about 160,000 words. The download is about 500 KB.&lt;br /&gt;&lt;h2&gt;
Comparison
&lt;/h2&gt;Many anagram finders are slow or show lots of ads or even have malware in them. This is open-source code and it is written in entirely managed C#. There is no native code here.&lt;br /&gt;&lt;h2&gt;
Windows Forms
&lt;/h2&gt;The program uses Windows Forms so it looks like a standard program. It won't make you cringe every time you look at it because it is ugly.&lt;br /&gt;&lt;h2&gt;
Startup
&lt;/h2&gt;Starting up the program is nearly instant assuming the .NET framework is loaded. The program reads about 1 MB of data when it starts up and puts it in two arrays.&lt;br /&gt;&lt;h2&gt;
1985 Technology
&lt;/h2&gt;The data structure in this program was developed in 1985 and is called a directed acyclic word graph. This structure enables words to share prefixes and suffixes in the tree. It uses about 60% less memory than a regular tree.&lt;br /&gt;&lt;h2&gt;
Lines of Code
&lt;/h2&gt;This program has about 400 lines of code that are commented. It was written in about 4 hours, and builds on existing technology such as the DAWG that I developed previously.&lt;br /&gt;&lt;h1&gt;
Conclusion
&lt;/h1&gt;This anagram finder is better than most of them on the Internet, either on web pages or as downloads. It is open-source and therefore doesn't contain any bad things. It is a 400 line C# program that uses complicated technology to process anagrams extremely fast and use little memory.&lt;br /&gt;&lt;h1&gt;
About
&lt;/h1&gt;This program is described in a more detailed way in my new article &lt;a href="http://dotnetperls.com/Content/Anagram-Windows.aspx" class="externalLink"&gt;http://dotnetperls.com/Content/Anagram-Windows.aspx&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; Anagram Open Source. &lt;b&gt;Sam Allen&lt;/b&gt; developed this program and wrote 100% of the code. He offers more information at his website &lt;a href="http://dotnetperls.com/" class="externalLink"&gt;http://dotnetperls.com/&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; and will be providing updates and more in the future.&lt;br /&gt;
&lt;/div&gt;</description><author>smallenucd</author><pubDate>Sun, 27 Jul 2008 22:51:55 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Home 20080727P</guid></item><item><title>UPDATED WIKI: Home</title><link>http://code.msdn.microsoft.com/anagrams/Wiki/View.aspx?title=Home&amp;version=10</link><description>&lt;div class="wikidoc"&gt;
Page for an extremely fast anagram program that is built with the .NET framework. Will find all anagrams contained within any string--of the same length or shorter. Displays results instantly and uses little memory. Very simple and easy to use.
&lt;br /&gt; &lt;br /&gt;&lt;h1&gt;
Update July 2 2008
&lt;/h1&gt;Optimizations with unsafe pointers for startup. DAWG is initialized 57% faster. No big enhancements, just small fixes.&lt;br /&gt;May start up as much as 50% faster! See my new article &lt;a href="http://dotnetperls.com/Content/Unsafe-Parse.aspx" class="externalLink"&gt;http://dotnetperls.com/Content/Unsafe-Parse.aspx&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; for how it was made faster.&lt;br /&gt; &lt;br /&gt;&lt;h1&gt;
Update June 12 2008
&lt;/h1&gt;I made the algorithm over twice as fast, so it takes 0.4 milliseconds to find all the anagrams of a common 6 letter word. It also uses 20% less RAM (2 MB less). Also it sorts all the results first by longest to shortest, and then alphabetically (a double sort). Download EXE and source now.&lt;br /&gt; &lt;br /&gt; &lt;br /&gt;&lt;h1&gt;
Anagram Free Finder
&lt;/h1&gt;This is the source code and application for an anagram finding program in C#. It will instantly find all words contained in your string of letters and display them from longest to shortest.&lt;br /&gt; &lt;br /&gt; &lt;br /&gt; &lt;br /&gt;&lt;h2&gt;
Requirements
&lt;/h2&gt;Anagram Free Finder runs on .NET 3.5 and requires that framework. The source is built with Visual Studio 2008 SP1 beta.&lt;br /&gt;&lt;h2&gt;
Screenshot
&lt;/h2&gt;This is a picture of Anagram Free Finder. It shows that you can type into the textbox and the anagrams will instantly display on the top part.&lt;br /&gt;&lt;img src="http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=anagrams&amp;amp;DownloadId=2324" alt="anagram2.png" /&gt;&lt;br /&gt;&lt;img src="http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=anagrams&amp;amp;DownloadId=2323" alt="anagram1.png" /&gt;&lt;br /&gt;&lt;h2&gt;
Usage
&lt;/h2&gt;Each letter you type in the bottom textbox will update the screen with all the anagram words. This occurs instantly and there is no waiting.&lt;br /&gt;&lt;h1&gt;
Implementation
&lt;/h1&gt;The anagram finder uses a sophisticated directed acyclic word graph structure to store the words. It stores about 160,000 words. The download is about 500 KB.&lt;br /&gt;&lt;h2&gt;
Comparison
&lt;/h2&gt;Many anagram finders are slow or show lots of ads or even have malware in them. This is open-source code and it is written in entirely managed C#. There is no native code here.&lt;br /&gt;&lt;h2&gt;
Windows Forms
&lt;/h2&gt;The program uses Windows Forms so it looks like a standard program. It won't make you cringe every time you look at it because it is ugly.&lt;br /&gt;&lt;h2&gt;
Startup
&lt;/h2&gt;Starting up the program is nearly instant assuming the .NET framework is loaded. The program reads about 1 MB of data when it starts up and puts it in two arrays.&lt;br /&gt;&lt;h2&gt;
1985 Technology
&lt;/h2&gt;The data structure in this program was developed in 1985 and is called a directed acyclic word graph. This structure enables words to share prefixes and suffixes in the tree. It uses about 60% less memory than a regular tree.&lt;br /&gt;&lt;h2&gt;
Lines of Code
&lt;/h2&gt;This program has about 400 lines of code that are commented. It was written in about 4 hours, and builds on existing technology such as the DAWG that I developed previously.&lt;br /&gt;&lt;h1&gt;
Conclusion
&lt;/h1&gt;This anagram finder is better than most of them on the Internet, either on web pages or as downloads. It is open-source and therefore doesn't contain any bad things. It is a 400 line C# program that uses complicated technology to process anagrams extremely fast and use little memory.&lt;br /&gt;&lt;h1&gt;
About
&lt;/h1&gt;This program is described in a more detailed way in my new article &lt;a href="http://dotnetperls.com/Content/Anagram-Windows.aspx" class="externalLink"&gt;http://dotnetperls.com/Content/Anagram-Windows.aspx&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; Anagram Open Source. &lt;b&gt;Sam Allen&lt;/b&gt; developed this program and wrote 100% of the code. He offers more information at his website &lt;a href="http://dotnetperls.com/" class="externalLink"&gt;http://dotnetperls.com/&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; and will be providing updates and more in the future.&lt;br /&gt;
&lt;/div&gt;</description><author>smallenucd</author><pubDate>Thu, 03 Jul 2008 01:58:46 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Home 20080703A</guid></item><item><title>UPDATED WIKI: Home</title><link>http://code.msdn.microsoft.com/anagrams/Wiki/View.aspx?title=Home&amp;version=9</link><description>&lt;div class="wikidoc"&gt;
Page for an extremely fast anagram program that is built with the .NET framework. Will find all anagrams contained within any string--of the same length or shorter. Displays results instantly and uses little memory. Very simple and easy to use.
&lt;br /&gt; &lt;br /&gt;&lt;h1&gt;
Update July 2 2008
&lt;/h1&gt;Optimizations with unsafe pointers for startup. DAWG is initialized 57% faster. No big enhancements, just small fixes.&lt;br /&gt;May start up as much as 50% faster!&lt;br /&gt; &lt;br /&gt;&lt;h1&gt;
Update June 12 2008
&lt;/h1&gt;I made the algorithm over twice as fast, so it takes 0.4 milliseconds to find all the anagrams of a common 6 letter word. It also uses 20% less RAM (2 MB less). Also it sorts all the results first by longest to shortest, and then alphabetically (a double sort). Download EXE and source now.&lt;br /&gt; &lt;br /&gt; &lt;br /&gt;&lt;h1&gt;
Anagram Free Finder
&lt;/h1&gt;This is the source code and application for an anagram finding program in C#. It will instantly find all words contained in your string of letters and display them from longest to shortest.&lt;br /&gt; &lt;br /&gt; &lt;br /&gt; &lt;br /&gt;&lt;h2&gt;
Requirements
&lt;/h2&gt;Anagram Free Finder runs on .NET 3.5 and requires that framework. The source is built with Visual Studio 2008 SP1 beta.&lt;br /&gt;&lt;h2&gt;
Screenshot
&lt;/h2&gt;This is a picture of Anagram Free Finder. It shows that you can type into the textbox and the anagrams will instantly display on the top part.&lt;br /&gt;&lt;img src="http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=anagrams&amp;amp;DownloadId=2324" alt="anagram2.png" /&gt;&lt;br /&gt;&lt;img src="http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=anagrams&amp;amp;DownloadId=2323" alt="anagram1.png" /&gt;&lt;br /&gt;&lt;h2&gt;
Usage
&lt;/h2&gt;Each letter you type in the bottom textbox will update the screen with all the anagram words. This occurs instantly and there is no waiting.&lt;br /&gt;&lt;h1&gt;
Implementation
&lt;/h1&gt;The anagram finder uses a sophisticated directed acyclic word graph structure to store the words. It stores about 160,000 words. The download is about 500 KB.&lt;br /&gt;&lt;h2&gt;
Comparison
&lt;/h2&gt;Many anagram finders are slow or show lots of ads or even have malware in them. This is open-source code and it is written in entirely managed C#. There is no native code here.&lt;br /&gt;&lt;h2&gt;
Windows Forms
&lt;/h2&gt;The program uses Windows Forms so it looks like a standard program. It won't make you cringe every time you look at it because it is ugly.&lt;br /&gt;&lt;h2&gt;
Startup
&lt;/h2&gt;Starting up the program is nearly instant assuming the .NET framework is loaded. The program reads about 1 MB of data when it starts up and puts it in two arrays.&lt;br /&gt;&lt;h2&gt;
1985 Technology
&lt;/h2&gt;The data structure in this program was developed in 1985 and is called a directed acyclic word graph. This structure enables words to share prefixes and suffixes in the tree. It uses about 60% less memory than a regular tree.&lt;br /&gt;&lt;h2&gt;
Lines of Code
&lt;/h2&gt;This program has about 400 lines of code that are commented. It was written in about 4 hours, and builds on existing technology such as the DAWG that I developed previously.&lt;br /&gt;&lt;h1&gt;
Conclusion
&lt;/h1&gt;This anagram finder is better than most of them on the Internet, either on web pages or as downloads. It is open-source and therefore doesn't contain any bad things. It is a 400 line C# program that uses complicated technology to process anagrams extremely fast and use little memory.&lt;br /&gt;&lt;h1&gt;
About
&lt;/h1&gt;This program is described in a more detailed way in my new article &lt;a href="http://dotnetperls.com/Content/Anagram-Windows.aspx" class="externalLink"&gt;http://dotnetperls.com/Content/Anagram-Windows.aspx&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; Anagram Open Source. &lt;b&gt;Sam Allen&lt;/b&gt; developed this program and wrote 100% of the code. He offers more information at his website &lt;a href="http://dotnetperls.com/" class="externalLink"&gt;http://dotnetperls.com/&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; and will be providing updates and more in the future.&lt;br /&gt;
&lt;/div&gt;</description><author>smallenucd</author><pubDate>Thu, 03 Jul 2008 01:57:42 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Home 20080703A</guid></item><item><title>CREATED RELEASE: AnagramFree-July2-SOURCE (Jul 02, 2008)</title><link>http://code.msdn.microsoft.com/anagrams/Release/ProjectReleases.aspx?ReleaseId=1248</link><description></description><author></author><pubDate>Thu, 03 Jul 2008 01:56:44 GMT</pubDate><guid isPermaLink="false">CREATED RELEASE: AnagramFree-July2-SOURCE (Jul 02, 2008) 20080703A</guid></item><item><title>CREATED RELEASE: Anagram EXE July2 (Jul 02, 2008)</title><link>http://code.msdn.microsoft.com/anagrams/Release/ProjectReleases.aspx?ReleaseId=1247</link><description></description><author></author><pubDate>Thu, 03 Jul 2008 01:54:48 GMT</pubDate><guid isPermaLink="false">CREATED RELEASE: Anagram EXE July2 (Jul 02, 2008) 20080703A</guid></item><item><title>UPDATED RELEASE: Anagram Free Finder EXE July 2 (Jul 02, 2008)</title><link>http://code.msdn.microsoft.com/anagrams/Release/ProjectReleases.aspx?ReleaseId=1245</link><description></description><author></author><pubDate>Thu, 03 Jul 2008 01:40:29 GMT</pubDate><guid isPermaLink="false">UPDATED RELEASE: Anagram Free Finder EXE July 2 (Jul 02, 2008) 20080703A</guid></item><item><title>UPDATED RELEASE: AnagramFree July 2 SOURCE (Jul 02, 2008)</title><link>http://code.msdn.microsoft.com/anagrams/Release/ProjectReleases.aspx?ReleaseId=1246</link><description></description><author></author><pubDate>Thu, 03 Jul 2008 01:39:59 GMT</pubDate><guid isPermaLink="false">UPDATED RELEASE: AnagramFree July 2 SOURCE (Jul 02, 2008) 20080703A</guid></item><item><title>CREATED RELEASE: AnagramFree July 2 SOURCE (Jul 02, 2008)</title><link>http://code.msdn.microsoft.com/anagrams/Release/ProjectReleases.aspx?ReleaseId=1246</link><description></description><author></author><pubDate>Thu, 03 Jul 2008 01:39:37 GMT</pubDate><guid isPermaLink="false">CREATED RELEASE: AnagramFree July 2 SOURCE (Jul 02, 2008) 20080703A</guid></item><item><title>CREATED RELEASE: Anagram Free Finder EXE July 2 (Jul 02, 2008)</title><link>http://code.msdn.microsoft.com/anagrams/Release/ProjectReleases.aspx?ReleaseId=1245</link><description></description><author></author><pubDate>Thu, 03 Jul 2008 01:37:55 GMT</pubDate><guid isPermaLink="false">CREATED RELEASE: Anagram Free Finder EXE July 2 (Jul 02, 2008) 20080703A</guid></item><item><title>UPDATED WIKI: Home</title><link>http://code.msdn.microsoft.com/anagrams/Wiki/View.aspx?title=Home&amp;version=8</link><description>&lt;div class="wikidoc"&gt;
&lt;b&gt;Resource Page Description&lt;/b&gt;&lt;br /&gt;Page for an extremely fast anagram program that is built with the .NET framework. Will find all anagrams contained within any string--of the same length or shorter. Displays results instantly and uses little memory. Very simple and easy to use.
&lt;br /&gt; &lt;br /&gt;&lt;h1&gt;
Update July 2 2008
&lt;/h1&gt;Optimizations with bitmasks and also with unsafe pointers for startup. DAWG is initialized 57% faster. Lookups are 39% faster.&lt;br /&gt;From version 1, this is about 4 times faster for lookups and twice as fast to start up.&lt;br /&gt; &lt;br /&gt;&lt;h1&gt;
Update June 12 2008
&lt;/h1&gt;I made the algorithm over twice as fast, so it takes 0.4 milliseconds to find all the anagrams of a common 6 letter word. It also uses 20% less RAM (2 MB less). Also it sorts all the results first by longest to shortest, and then alphabetically (a double sort). Download EXE and source now.&lt;br /&gt; &lt;br /&gt; &lt;br /&gt;&lt;h1&gt;
Anagram Free Finder
&lt;/h1&gt;This is the source code and application for an anagram finding program in C#. It will instantly find all words contained in your string of letters and display them from longest to shortest.&lt;br /&gt; &lt;br /&gt; &lt;br /&gt; &lt;br /&gt;&lt;h2&gt;
Requirements
&lt;/h2&gt;Anagram Free Finder runs on .NET 3.5 and requires that framework. The source is built with Visual Studio 2008 SP1 beta.&lt;br /&gt;&lt;h2&gt;
Screenshot
&lt;/h2&gt;This is a picture of Anagram Free Finder. It shows that you can type into the textbox and the anagrams will instantly display on the top part.&lt;br /&gt;&lt;img src="http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=anagrams&amp;amp;DownloadId=2324" alt="anagram2.png" /&gt;&lt;br /&gt;&lt;img src="http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=anagrams&amp;amp;DownloadId=2323" alt="anagram1.png" /&gt;&lt;br /&gt;&lt;h2&gt;
Usage
&lt;/h2&gt;Each letter you type in the bottom textbox will update the screen with all the anagram words. This occurs instantly and there is no waiting.&lt;br /&gt;&lt;h1&gt;
Implementation
&lt;/h1&gt;The anagram finder uses a sophisticated directed acyclic word graph structure to store the words. It stores about 160,000 words. The download is about 500 KB.&lt;br /&gt;&lt;h2&gt;
Comparison
&lt;/h2&gt;Many anagram finders are slow or show lots of ads or even have malware in them. This is open-source code and it is written in entirely managed C#. There is no native code here.&lt;br /&gt;&lt;h2&gt;
Windows Forms
&lt;/h2&gt;The program uses Windows Forms so it looks like a standard program. It won't make you cringe every time you look at it because it is ugly.&lt;br /&gt;&lt;h2&gt;
Startup
&lt;/h2&gt;Starting up the program is nearly instant assuming the .NET framework is loaded. The program reads about 1 MB of data when it starts up and puts it in two arrays.&lt;br /&gt;&lt;h2&gt;
1985 Technology
&lt;/h2&gt;The data structure in this program was developed in 1985 and is called a directed acyclic word graph. This structure enables words to share prefixes and suffixes in the tree. It uses about 60% less memory than a regular tree.&lt;br /&gt;&lt;h2&gt;
Lines of Code
&lt;/h2&gt;This program has about 400 lines of code that are commented. It was written in about 4 hours, and builds on existing technology such as the DAWG that I developed previously.&lt;br /&gt;&lt;h1&gt;
Conclusion
&lt;/h1&gt;This anagram finder is better than most of them on the Internet, either on web pages or as downloads. It is open-source and therefore doesn't contain any bad things. It is a 400 line C# program that uses complicated technology to process anagrams extremely fast and use little memory.&lt;br /&gt;&lt;h1&gt;
About
&lt;/h1&gt;This program is described in a more detailed way in my new article &lt;a href="http://dotnetperls.com/Content/Anagram-Windows.aspx" class="externalLink"&gt;http://dotnetperls.com/Content/Anagram-Windows.aspx&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; Anagram Open Source. &lt;b&gt;Sam Allen&lt;/b&gt; developed this program and wrote 100% of the code. He offers more information at his website &lt;a href="http://dotnetperls.com/" class="externalLink"&gt;http://dotnetperls.com/&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; and will be providing updates and more in the future.&lt;br /&gt;
&lt;/div&gt;</description><author>smallenucd</author><pubDate>Thu, 03 Jul 2008 01:34:35 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Home 20080703A</guid></item><item><title>UPDATED RELEASE: Anagram Free Finder - Application EXE (Jun 11, 2008)</title><link>http://code.msdn.microsoft.com/anagrams/Release/ProjectReleases.aspx?ReleaseId=1160</link><description></description><author></author><pubDate>Thu, 12 Jun 2008 19:15:20 GMT</pubDate><guid isPermaLink="false">UPDATED RELEASE: Anagram Free Finder - Application EXE (Jun 11, 2008) 20080612P</guid></item><item><title>UPDATED RELEASE: Anagram Free Finder Source Version 2 (June12) (Jun 12, 2008)</title><link>http://code.msdn.microsoft.com/anagrams/Release/ProjectReleases.aspx?ReleaseId=1163</link><description></description><author></author><pubDate>Thu, 12 Jun 2008 19:14:50 GMT</pubDate><guid isPermaLink="false">UPDATED RELEASE: Anagram Free Finder Source Version 2 (June12) (Jun 12, 2008) 20080612P</guid></item></channel></rss>