Data Structures and Algorithms Using C#

Data Structures and Algorithms Using C#
Authors
Michael McMillan
ISBN
0521670152
Published
26 Mar 2007
Purchase online
amazon.com

C# programmers: no more translating data structures from C++ or Java to use in your programs! Mike McMillan provides a tutorial on how to use data structures and algorithms plus the first comprehensive reference for C# implementation of data structures and algorithms found in the .NET Framework library, as well as those developed by the programmer. The approach is very practical, using timing tests rather than Big O notation to analyze the efficiency of an approach.

Page 2 of 2
  1. Editorial Reviews
  2. Customer Reviews

Customer Reviews

Shaun McDonnell said
So, I sat down to read this book thinking it might have some good insights into using C# for common data algorithms. However, it has become a great source of comedic relief for me, my friends and colleagues. The programming errors are hilarious! My favorite, by far, is on page 255 where the code sample reads like this:

public class Node {
Public int data;
public void Node(ByVal key As Integer) {
data = key;
}
}

Nice mixture of C# and VB.NET in one line of code there. It seems to me that this person doesn't know C# at all.

How did this book ever get published? How does this author keep it published? Why did I buy it?

Well, Mike, thanks for the laughs!

I think the epilogue should contain the following code example:

public class BookAuthor
{

public BookAuthor(bool knowsCSharp)
{
if(knowsCSharp)
knowsCSharp = false; // who am I kidding! - MM
}

public void WriteBook()
{
WriteSomeStuff();
}

public void EditBook()
{
return; // I am a C# GOD!! - MM
}

public void PublishBook()
{
try
{
SendToPublisherAndMakeSale();
}
catch(BookIsHorribleException ex)
{
// just ignore this and keep trying.... - MM
PublishBook();
}
}
}

Jay Elbee said
Half the code samples do not compile for such simple things as missing semicolons

And given that about half the content of the book is the code samples that is a big issue!

Here is an example:

static void Main() {
CSet setA = new CSet();
CSet setB = new CSet();
setA.add("milk");
setA.add("eggs");
setA.add("bacon");
setA.add("cereal");
setB.add("bacon");
setB.add("eggs");
setB.add("bread") <==========>
CSet setC = new CSet();
setC = setA.Union(setB);
Console.WriteLine();
Console.WriteLine("A: " & setA.ToString());
Console.WriteLine("B: " & setB.ToString()) <=========>
Console.WriteLine("A union B: " & setC.ToString());
...
...
...

Patrick J. Macdonald said
The code examples are abysmal! Obviously the author never bothered to run (or even compile) many of the examples. This book is an example of how not to write a book.

Michael B. Hill said
There are so many problems with this book I'm not sure where to begin. Here are a few random issues:
- Ch. 1 The author creates a class named Timing to time how long it takes a block of code to run. As soon as I saw the name, it bothered me. The class name should be what the class is, not what it does. Timer would have been a better name. Then I wonder if I'm being too critical and continue on. The method names in the class are also poorly named. The casing of method names is not consistent. Now I'm getting worried.

- On to Ch. 2. Coverage of ArrayList is incomplete. There's just no insight given.

- Ch 3. Author gives a poor explanation of a Bubble Sort. How the sort works is not presented in a clear way. On to the Selection Sort. Oops they used the same image for Selection Sort that was used for Bubble Sort.

... The problems go on and on...

Blake Meinke said
The author doesn't explain things well, doesn't comment his code, and the code itself is FULL of bugs. If someone edited this book(and I wouldn't doubt it if no one did), they should be fired and barred from ever editing anything ever again....ever.... Definitely the worst programming book I've ever read....

You might also like...

Comments

Contribute

Why not write for us? Or you could submit an event or a user group in your area. Alternatively just tell us what you think!

Our tools

We've got automatic conversion tools to convert C# to VB.NET, VB.NET to C#. Also you can compress javascript and compress css and generate sql connection strings.

“Walking on water and developing software from a specification are easy if both are frozen.” - Edward V Berard