C# jest nowoczesnym i elastycznym językiem programowania. Aby w pełni skorzystać z jego zalet, trzeba płynnie posługiwać się dostępnymi w nim strukturami danych i algorytmami, pozwalają one bowiem na efektywnie organizowanie danych i mają znaczący wpływ na wydajność aplikacji. Z punktu widzenia programisty kluczowe jest ich właściwe zaimplementowanie: wybór właściwej struktury danych i związanego z nią algorytmu stanowi o jakości tworzonego kodu. Na przykład w celu wykonywania wysokowydajnych operacji na zbiorach warto użyć zbioru haszowanego. Inne konstrukcje umożliwiają rozwiązywanie kolejnych problemów.
Dzięki tej książce nauczysz się używania struktur danych i implementacji najważniejszych algorytmów w języku C#. Najpierw zapoznasz się z najprostszymi strukturami danych o swobodnym dostępie - z tablicami oraz listami. Wyjaśniono tu również działanie struktur danych o dostępie sekwencyjnym, opartych na stosach i kolejkach. Przedstawiono zastosowanie słowników, dzięki którym można mapować klucze na wartości i prowadzić szybkie wyszukiwanie. Przystępnie opisano korzystanie z najbardziej zaawansowanych konstrukcji, takich jak drzewo binarne, binarne drzewo poszukiwań, drzewo samorównoważące się i kopiec. W końcowej części książki znajdziesz ciekawą analizę stosowania grafów i związanych z nimi algorytmów, takich jak przeszukiwanie grafu, minimalne drzewo rozpinające, kolorowanie węzłów oraz znajdowanie najkrótszej ścieżki.
Najciekawsze zagadnienia ujęte w książce:
różne typy danych w C#: wartościowe i referencyjne
tablice i listy oraz algorytmy sortowania
operacje na zbiorach oraz wbudowany typ HashSet
struktury drzewiaste i kopce: binarne, dwumianowe oraz Fibonacciego
algorytmy oparte na grafach, w tym algorytm Dijkstry
C#. Liczy się algorytm i odpowiednia struktura danych!
Dr Marcin Jamro jest programistą i architektem różnych aplikacji. Obecnie pełni funkcję prezesa firmy TITUTO Sp. z o.o. z siedzibą w Rzeszowie. Ma również dorobek naukowy: jest autorem kilku publikacji i organizatorem konferencji naukowych. Zdobył certyfikaty: MCP, MCTS i MCPD. Szczególnie interesuje się inżynierią oprogramowania i zarządzaniem projektami.
Informacja dotycząca wprowadzenia produktu do obrotu:
Ten produkt został wprowadzony na rynek przed 13 grudnia 2024 r. zgodnie z obowiązującymi wówczas przepisami (Dyrektywą o ogólnym bezpieczeństwie produktów). W związku z tym może on być nadal sprzedawany bez konieczności dostosowania do nowych wymogów wynikających z Rozporządzenia o Ogólnym Bezpieczeństwie Produktów (GPSR). Produkt zachowuje pełną legalność w obrocie, a jego jakość i bezpieczeństwo pozostają zgodne z obowiązującymi wcześniej standardami.
Information regarding product placement on the market:
This product was placed on the market before December 13, 2024, in accordance with the applicable regulations at the time (the General Product Safety Directive). As a result, it can continue to be sold without needing to meet the new requirements introduced by the General Product Safety Regulation (GPSR). The product remains fully compliant with all previously valid legal standards, ensuring its continued quality and safety.