Opis
C++ to dojrzały język programowania o wielu różnych zastosowaniach. Inżynier oprogramowania, który chce w pełni skorzystać z jego zalet, powinien płynnie posługiwać się dostępnymi w tym języku strukturami danych i algorytmami. W ten sposób łatwiej można rozwiązywać konkretne problemy. Zastosowanie odpowiedniej struktury danych oraz algorytmu jest również ważne z punktu widzenia wydajności działania kodu, co bezpośrednio przekłada się na szybkość pracy aplikacji. Bez dogłębnego zrozumienia tych zagadnień bardzo trudno nauczyć się biegle programować w C++.
Dzięki tej książce dowiesz się, na czym polega implementacja klasycznych struktur danych i algorytmów w C++. Znajdziesz tu również przystępne wprowadzenie do podstawowych konstrukcji językowych oraz do korzystania z zintegrowanego środowiska programistycznego (IDE). Ponadto dowiesz się, w jaki sposób przechowywać dane za pomocą list wiązanych, tablic, stosów i kolejek, a także jak zaimplementować algorytmy sortowania, takie jak sortowanie szybkie i sortowanie przez kopcowanie, oraz algorytmy wyszukiwania, takie jak wyszukiwanie liniowe czy binarne. Kolejnym ważnym zagadnieniem ujętym w książce jest wysoka wydajność algorytmów operujących na ciągach znakowych i strukturach mieszających, jak również analiza algorytmów siłowych, zachłannych i wielu innych.
Najciekawsze zagadnienia ujęte w książce:
podstawy C++, w tym kontrola przepływu kodu i abstrakcyjne typy danych
listy, listy wiązane, stosy i kolejki
algorytmy sortowania, w tym bąbelkowe, przez selekcję, wstawianie, scalanie
tworzenie hierarchicznej struktury drzewa
praktyczne aspekty implementacji algorytmów
C++. O jakości kodu decyduje algorytm i odpowiednia struktura danych!
O autorze
Wisnu Anggoro jest doświadczonym programistą C/C++, certyfikowanym przez Microsoft (Microsoft Certified Professional) w zakresie programowania w C++. Programowaniem zajmuje się od czasów szkolnych (czyli około 20 lat). Wyspecjalizował się w programowaniu kart elektronicznych, komputerów i aplikacji internetowych. Obecnie pracuje jako starszy programista kart elektronicznych w CIPTA, indonezyjskiej firmie specjalizującej się w innowacji i technologii kart.