|
Buchtipps
Hier möchte ich ein paar Buchtipps zum Besten geben.
Zu den nachfolgenden Büchern kann man weitere Meinungen bekommen,
wenn man auf die Abbildungen links klickt. Man wird dann zu Amazon.de
oder BOL.de
weitergeleitet.
Generell gilt die Faustregel: "Wenn "Addison Wesley"
draufsteht (Verlag), ist das Buch gut."
Bei www.dealtime.de
kann man einen Preisvergleich durchführen lassen. Das lohnt sich
in der Regel besonders bei amerikanischen Büchern.
Wenn ihr die Buchtipps nützlich findet, fände ich es toll,
wenn ihr die Bücher über meine Homepage bestellt (klick auf
die jeweiligen Titel), dann bekomme ich eine kleine Belohnung. (Es entstehen
keine Mehrkosten) Ich habe mir die Freiheit genommen, bei den Links
immer die günstigsten Anbieter rauszusuchen. Bei "Introduction
to Algorithms" liegt die Preisdifferenz beispielsweise bei über
60 DM!
Informatik
Algorithmen in C++
44.96 EUR
|
Algorithmen in C++ (oder C / Pascal) von Robert Sedgewick
Auf 750 Seiten beschäftigt sich dieses Buch mit Allem, was
man für den Bundeswettbewerb Informatik wissen sollte. Es
stelle auch für mich den Einstieg dar und wird noch immer
als die Nummer 1 der Empfehlungen für den BWInf gehandelt.
Zunächst werden Grundlagen wie die elementarsten Datenstrukturen
und die Groß-O-Notation vorgestellt. Die beiden folgenden
Kapitel widmen sich dann Such- und Sortieralgorithmen.
Das Kapitel "Verarbeitung von Zeichenfolgen" behandelt
Themen wie die Suche in Zeichenfolgen, Patternmatching oder Datenkomprimierung
(wobei man sich vom letzten Thema nicht zu viel versprechen sollte).
Anschließend folgen Geometrische Algorithmen. Dies sind
Elementare geometrische Methoden, Bestimmung einer konvexen Hülle,
Bereichssuche, Geometrischer Schnitt und das Problem des nächsten
Punktes.
Besonders Interessant fand ich das Thema "Algorithmen für
Graphen". Hier werden elementare Algorithmen für Graphen,
das Problem des Zusammenhangs, gewichtete Graphen, gerichtete
Graphen, der Fluß in Netzwerken und Paarungen besprochen.
Das Kaptiel "Mathematische Algorithmen" behandelt interessante,
für den Bundeswettbewerb allerdings weniger relevante Themen
wie Zufallszahlen, Arithmetik, Gaußsches Eliminationsverfahren,
Kurvenanpassung und Integration.
Die "Weiterführenden Themen" des letzen Kapitels
kommen im Sedgewick ein wenig zu kurz. Es sind im Einzelnen Parallele
Algorithmen, Fast Fourier-Transformation, Dynamische Programmierung,
Lineare Programmierung, Erschöpfendes Durchsuchen und NP-Vollständigkeit.
Algorithmen in C++ ist in einigen Bereichen zu oberflächlich,
aber gerade deshalb und weil die Mathematik ein wenig außen
vor gelassen wird stellt es meiner Meinung nach den optimalen
Einstieg in die Informatik dar. Dies gilt insbesondere für
Teilnehmer am Bundeswettbewerb Informatik, die mit der ersten
oder zweiten Runde beschäftigt sind und noch nicht auf den
mathematischen Background eines Studenten zurückgreifen können.
Es gibt auch eine C-Version.
|
Algorithmen in C++
84.77 EUR, Preis vom $-Kurs abhängig
|
The ALGORITHM Design Manual von Steven S. Skiena
Trotz des hohen Preises und des geringen Umfanges von nur ca.
500 Seiten ist die Anschaffung dieses Buches sehr empfehlenswert.
Der Grund dafür ist, dass dieses Buch einen ganz anderen
Ansatz als all die anderen Bücher verfolgt:
Statt seitenweise Algorithmen zu beschreiben wird in diesem Buch
gezeigt, wie man selbst Algorithmen entwickelt oder an anderen
Stellen finden kann. Dazu wurde im zweiten Abchnitt des Buches
ein umfangreicher Algorithmenkatalog aufgenommen, in dem jeder
Algorithmus mit einem kleinen Piktogramm, einer kurzen Beschreibung
und einer Liste von Webressourcen beschrieben wird. Dieser Katalog
ist auch im WWW gespiegelt. Siehe The
Stony Brook Algorithm Repository. In diesem Katalog wurde
auch meine Homepage zum Chinese
Postman Problem aufgenommen. Das Buch ist somit besonders
gut für die dritte Runde des Bundeswettbewerb Informatik
geeignet, um mitreden zu können und einen Überblick
über die verschiedenen Algorithmengebiete zu bekommen.
Aber auch die erste Hälfte des Buches zeichnet sich durch
seine Einzigartigkeit aus. In keinem anderen Buch habe ich bis
jetzt eine so verständliche (und zugleich unterhaltsame)
Erklärung von NP-Vollständigkeit und Dynamischer Programmierung
gelesen. Gerade das Letztere macht das Buch zu einem Muss für
die Internationale Informatik-Olympiade.
|
Algorithmen in C++
87.10 EUR, Preis vom $-Kurs abhängig
|
Introduction to Algorithms von Thomas H. Cormen
Dieses Buch zeichnet sich vor allem durch seine Vollständigkeit
aus. Es ist sehr viel tiefgreifender als Sedgewick oder Skiena
und hebt sich vor Ottmann/Widmeyer dadurch hervor, dass die verwendete
Mathematik zunächst erklärt wird.
Das Buch wendet sich eher an ein wenig fortgeschrittenere Informatiker.
Die Empfehlung zu diesem Buch erhielt ich von einem Teilnehmer
der Zentral-Europäischen und Internationalen Informatik-Olympiade,
der bei beiden Wettbewerben eine Gold-Medaille gewann. - Und ich
kann ihm beipflichten.
Zunächst werden Mathematische Grundlagen erklärt, auf
denen das Buch dann aufbaut.
Im zweiten Kapitel werden Such und Sortier-Algorithmen wiedergegeben,
wobei hier ein klarer Vorteil gegenüber Sedgewick festzustellen
ist: Es werden nicht in epischer Breite Bubble-Sort, Selection-Sort,
Insertion-Sort, u.s.w. erläutert, sondern man kommt sofort
zu den interessanten Algorithmen wie Heapsort und Quicksort.
Das dritte große Kapitel bilden Datenstrukturen. Hier werden
elementare Datenstrukturen, Hashes, Binärbäume, Rot-Schwarz-Bäume
und ähnliches diskutiert, wobei man sieht, dass ein gewisser
Wert auf mathematische Vollständigkeit gelegt wird.
Das Kapitel "Advanced Design and Analysis Techniques"
behandelt Dynamische Programmierung, Greedy Algorithms und Amortisierte
Analyse.
Dem folgen "Advanced Data Stuctures" wie B-Trees, Binomial
Heaps u.ä., die für mich bis her nicht besonders relevant
waren. Bei der Endrunde des BWInf ist es ganz schön von ihnen
gehört zu haben, aber weder dort noch bei den Informatik-Olympiaden
wird man sie je implementieren müssen.
Das vorletze Kapitel "Graph Algorithms" behandelt annähernd
die selben Gebiete wie Sedgewick, wobei jedoch die Qualität
recht unterschiedlich ist. Sedgwick arbeitet recht anschaulich,
während Cormen mathematisch korrekter aber auch eleganter
arbeitet.
Wie in vielen anderen Büchern musste das letzte Kapitel
"Selected Topics" für den ganzen Rest herhalten.
Auch hier wird über ähnliche Themen wie im Sedgewick
gesprochen. Interessant sind aber die Kapitel "Computational
Geometry", "NP-Completeness" und "Approximation
Algorithms" (für NP-Vollständige Probleme wie vertex-cover,
traveling-salesman, set-covering und subset-sum problem).
Wer Sedgewick gelesen hat und in bestimmten Gebieten näheres
erfahren möchte, oder einfach generell mehr in die Tiefe
gehen will, für den ist Cormen genau das richtige.
|
Algorithmen
und Datenstrukturen
59.95 EUR
|
Algorithmen und Datenstrukturen von Thomas Ottmann und Peter
Widmayer
Dieses Buch wird häufig als der "deutsche Cormen"
bezeichnet. Dem möchte ich mich nicht anschließen.
Ottmann/Widmayer behandeln weniger Themen, die jedoch tiefer
und noch mathematischer. Wer das Kapitel über Bäume
durchgearbeitet hat, mach 2 Wochen lang einen riesen Bogen um
jeden Wald. Für die Endrunde des Bundeswettbewerb Informatik
ist das Buch in gewissen Sinne eine Bereicherung, als das man
die korrekten deutschen Bezeichnungen für verschiedene Elemente
der Informatik kennen lernt und erfährt wie Informatik wirklich
aussehen kann. Für die Informatik-Olympiaden ist das Buch
nicht zu empfehlen (abgesehen von den Scanline-Sachen im Vorwort),
da die behandelten Themen viel zu groß sind (Wer implementiert
in 1.5 Stunden schon einen AVL-Baum - just for fun ;-)).
Für ein Informatik-Studium mag dieses Buch interessant sein,
das es die notwendige Mathematik durchexerziert.
Die behandelten Themengebiete sind Grundlage, Sortieren, Suchen,
Hashverfahren, Bäume, Manipulation von Mengen, Geometrische
Algorithmen, Graphenalgorithmen und Ausgewählte Themen.
|
Graphen,
Netzwerke und Algorithmen
59.95 EUR
|
Graphen, Netzwerke und Algorithmen von Dieter Jungnickel
Zu diesem Buch fällt mir nur ein Begriff ein: "Hardcore".
In diesem Buch wird wirklich alles zum Thema Graphentheorie
behandelt - nur eben auf recht abstrakte, mathematische Art und
Weise, sodass man kaum mehr als 3 Seiten pro Tag legen kann, weil
einem danach der Kopf dröhnt.
Für BWInf und IOI ist dieses Buch total ungeeignet. Wer
seine Promotion mit dem Thema Graphen-Theorie macht, wird an diesem
Buch seine Freude haben. ;-)
|
The
New Turing Omnibus
30.24 EUR
|
The New Turing Omnibus von A. K. Dewdney
Dieses Buch kann nicht nur von Informatikern gelesen werden.
In 66 Kapiteln wird so ziemlich alles behandelt, was irgendwie
mit der Informatik in Verbindung steht. Das geht von Chomsky Hierarchien
bis hin zu Computer Vieren. Dieses Buch ist für die Endrunde
des Bundeswettbewerb Informatik sehr, sehr empfehlenswert, da
man einen schönen Überblick über alles Mögliche
bekommt. Wer dort nach Logik, Grammatiken, Multiplexern, Public
Key-Verschlüsselung, Generierung von Großen Primzahlen,
Turing-Maschienen gefragt wird, muss sich keine Gedanken machen.
All dies wird im Turing Omnibus in ausreichender Tiefe behandelt.
|
Schülerduden
Informatik
16.90 EUR
|
Schülerduden Informatik
Auch wenn es sich hier um einen Duden in der gewohnten Form handelt,
ist dieses Buch empfehlenswert, denn wenn man es von vorne nach
hinten "liest", lernt man so manch einen Fachbegriff
kennen.
Der Duden geht natürlich nicht so in die Tiefe, wie die
anderen Bücher, aber stellt trotzdem einen recht brauchbaren
Überblick dar.
|
Modellieren
UML konzentriert
29.95 EUR
|
UML konzentriert von M. Fowler und K. Scott
Wer sich einige Zeit mit Programmieren beschäftigt hat,
wird merken, dass das Programmieren um so schwieriger ist, je
mehr man kann. Das liegt wohl dran, dass man nicht mehr einfach
drauf los programmieren will, sondern von vornherein ein geordnetes
Projekt machen möchte.
Eine Möglichkeit, ein Projekt zu strukturieren ist UML.
Das Buch UML konzentriert führt auf nur 150 Seiten in die
Unified Modelling Language ein und ermöglicht so mit wenig
Aufwand die UML zu nutzen.
Der geringe Umfang ist ausreichend, an einigen Stellen wünscht
man sich jedoch ein paar weiterführende Beispiele.
|
Entwurfsmuster
44.95 EUR
|
Entwurfsmuster von Gamma, Helm, Johnson, Vlissides (Gang of
Four)
Wer meint, er wisse, was Objekt-Orientierte Programmierung sei,
sollte sich dieses Buch kaufen. Wenn man es gelesen hat, programmiert
man nicht mehr wie vorher.
Wer ernsthaft programmieren möchte, sollte dieses Buch gelesen
haben.
Vorgestellt werden die Erzeugungsmuster Abstrakte Fabrik, Erbauer,
Fabrikmethode, Prototyp, Singleton, sowie Strukturmuster Adapter,
Brücke, Dekorierer, Fassade, Fliegengewicht, Kompositum,
Proxy, Befehl, Beobachter, Besucher, Interpreter, Memento, Schablonenmethode,
Strategie, Vermittler, Zustand und Zuständigkeitskette und
andere.
|
Programmieren
PHP 4.
Grundlagen und Profiwissen
49.90 EUR
|
PHP Grundlagen und Lösungen von Jörg Krause
PHP kommt in letzter Zeit als Serverseitige Skript-Sprache für
Homepages immer mehr in Mode und ich muss sagen: "Zurecht".
Die Sprache ist zwar nicht besonders elegant wie Perl, Java oder
C++ sondern sieht ein wenig wie ein zusammengesetztes Best-Of
aus, erfüllt aber für den genannten Aufgabenbereich
100%ig seine Aufgabe.
Mit dem Buch "PHP Grundlagen und Lösungen" ist
es, sofern man einen gewissen Programmierbackground hat, sehr
einfach, sich in PHP einzuarbeiten. Alle notwendigen Tools werden
auf CD mitgeliefert.
|
Goto
Java 2
59.95 EUR
|
Goto Java 2 von Guido Krüger
Goto Java 2 ist eine super Einführung in Java 2 (JDK 1.3).
Es handelt sich hier um eine Empfehlung aus den Java-Newsgroups,
der ich mich anschließe.
Wer sich selbst ein Bild machen möchte, kann sich ja einmal
die vollständige HTML-Version des Buches unter www.javabuch.de
ansehen.
|
Programmieren
in Perl
46.00 EUR
|
Programmieren in Perl von Larry Wall
Programmieren in Perl ist als "Das Kamelbuch" vom Meister
himself bekannt.
Es richtet sich nicht gerade an Programmiereinsteiger, ist aber
recht gut verständlich, wenn man nicht gerade ein Neuling
ist.
An einigen Stellen setzt mir dieses Buch zuviel Linux-Wissen
voraus. Wer nicht gerade Linux-Fetischist ist, kann mit Sätzen
wie "Diese Funktion macht ein fork wie in Linux" wenig
anfangen.
|
Sonstige Bücher
Per Anhalter durch die Galaxis
6.95 EUR
|
Per Anhalter durch die Galaxis von Douglas Adams
Was soll man dazu noch groß sagen.
Wer die einzige Trilogie in fünf Bänden noch nicht
gelesen hat lebt hinter dem Mond. Dies ist die Bibel der Informatiker.
Es wird das Mysterium um die Zahl 42 erklärt und auch die
Frage, warum Altavista ihre Übersetzungsmaschine Babelfish
nannte.
Ein paar kleine Anekdoten aus dem Anhalter:
Um die Antwort auf alle Fragen des Universums zu finden baute
man einen riesigen Computer, der viele Millionen Jahre rechnete
und die Antwort auf die Frage des Seins dann auch fand: 42 - Nur
was war die Frage zu dieser Antwort?
Zur Geschichte der Raumfahrt: Lange Zeit konnte man nicht schneller
als Licht reisen, da, wie man aus dem Physik-Unterricht weiß,
sich nichts schneller als Licht bewegt. - AUSSER schlechte Nachrichten.
Man baute also ein Raumschiff, das sich mit schlechten Nachrichten
fortbewegte. Das funktionierte soweit ganz gut, konnte sich aber
trotzdem nicht ganz durchsetzen, da das Raumschiff, wo immer es
ankam, äußerst unbeliebt war.
Dieses Buch MUSS einfach jeder gelesen haben.
|
Herr
der Ringe
13,50 EUR
|
Herr der Ringe von J.R.R. Tolkien
"Ein Ring, sie zu knechten, sie alle zu finden,
Ins Dunkle zu treiben und ewig zu binden
Im Lande Mordor, wo die Schatten drohn."
Dieses Buch gehört schon fast zur Allgemeinbildung.
Die Fans kritisieren, die neue Auflage sei schlechter übersetzt.
Ich kenne nur die neue Auflage und muss sagen, das Buch gefällt
mir trotzdem. Es ist eines der Bücher, die man anfängt
zu lesen und wenn man das nächste Mal auf die Uhr sieht,
sind 5 Stunden vergangen.
|
|