Nasza specjalność? Elektronika i druk 3D
Szybka dostawa 30 dni na zwrot
Magazyn i serwis? U nas, w Polsce!
Doradzamy i inspirujemy +1,7 mln zamówień
Nasza specjalność? Elektronika i druk 3D
Szybka dostawa 30 dni na zwrot
Magazyn i serwis? U nas, w Polsce!
Doradzamy i inspirujemy +1,7 mln zamówień

Zaufało nam już ponad 500 000 klientów. U nas masz:

 

wysyłkę tego samego dnia przy produktach z oznaczeniem „Wysyłka 24h”

 

własny serwis w Polsce

 

30 dni na zwrot i darmową dostawę w Polsce od 500 zł

 

4,9/5 w TrustMate i 4,9/5 w Google (prawie 4000 opinii)

 

fakturę VAT, leasing i raty dla firm

Dla firm

 

indywidualna wycena przy większych ilościach

 

leasing i raty od 1000 zł

 

faktura VAT

Dla szkół i uczelni

 

0% VAT na wybrane produkty

 

faktura z terminem płatności

 

pomoc w doborze zestawów do pracowni

Złóż zapytanie ofertowe - odpowiadamy szybko.

Indeks: KSZ-21252
EAN: 9788328353749

Algorytmy, struktury danych i techniki programowania. Wydanie VI - Piotr Wróblewski

Książka przeznaczona dla każdego początkującego programisty, a także dla specjalistów programowania. Szóste wydanie prezentuje szerokie spektrum zagadnień algorytmicznych, najważniejsze informacje na temat struktur danych, technik rekurencyjnych i złożonych metod algorytmicznych. Zawarte zostały przykładowe programy napisane w języku C++, łatwe do analizy i skompilowania z wykorzystaniem standardowych narzędzi. Książka zawiera opis zasad kompilacji dla środowiska Visual Studio 2017 i kilku wybranych środowisk używających GNU C++ (Dev-C++ i Cygwin).

Produkt wycofany ze sprzedaży

Ten model nie jest już produkowany i nie wróci do naszej oferty.

Uwaga!

Sprzedaż produktu została zakończona. Sprawdź inne w tej kategorii.

Opis produktu: Algorytmy, struktury danych i techniki programowania. Wydanie VI - Piotr Wróblewski

Książka przeznaczona dla każdego początkującego programisty, a także dla specjalistów programowania. Szóste wydanie prezentuje szerokie spektrum zagadnień algorytmicznych, najważniejsze informacje na temat struktur danych, technik rekurencyjnych i złożonych metod algorytmicznych. Zawarte zostały przykładowe programy napisane w języku C++, łatwe do analizy i skompilowania z wykorzystaniem standardowych narzędzi. Książka zawiera opis zasad kompilacji dla środowiska Visual Studio 2017 i kilku wybranych środowisk używających GNU C++ (Dev-C++ i Cygwin).

Algorytmika to dziedzina informatyki, zajmująca się analizą oraz projektowaniem algorytmów. Ma bardzo duży wpływ na wydajność systemów komputerowych.

Algorytmy, struktury danych i techniki programowania. Wydanie VI - Piotr Wróblewski

Algorytmy, struktury danych i techniki programowania. Wydanie VI - Piotr Wróblewski.

Algorytmy, struktury danych i techniki programowania. Wydanie VI - Piotr Wróblewski

Algorytmy, struktury danych i techniki programowania. Wydanie VI.

Informacje o autorze

Piotr Wróblewski - autor książek z dziedziny informatyki. Absolwent Politechniki Śląskiej oraz francuskiej uczelni informatycznej ENSSAT (Lannion w Bretanii). Zajmował się pisaniem oprogramowania na zamówienie i prowadzeniem szkoleń komputerowych. Pracował w spółkach zagranicznych z branży IT / telekomunikacja, głównie w charakterze kierownika projektów (Impaq, Polkomtel). Ukończył dodatkowe studia z zarządzania i marketingu Master HEC w Szkole Biznesu Politechniki Warszawskiej.

Informacje o książce

  • Autor: Piotr Wróblewski
  • ISBN: 978-83-283-5374-9
  • Rok wydania: 2019
  • Format: 158 x 235 mm
  • Oprawa: miękka
  • Ilość stron: 416
  • Wydawnictwo: Helion S.A.

Spis treści

Przedmowa 9

Uwagi do wydania VI 9
Co odróżnia tę książkę od innych podręczników? 10
Dlaczego C++? 11
Jak należy czytać tę książkę? 11
Co zostało opisane w tej książce? 12
Programy przykładowe 14
Konwencje typograficzne i oznaczenia 15

Rozdział 1. Zanim wystartujemy 17

  • Czym powinien się charakteryzować algorytm? 18
  • Jak to wcześniej bywało, czyli wyjątki z historii maszyn algorytmicznych 20
    • 1804 - 20
    • 1830 i później - 21
    • 1890 - 21
    • lata 30. XX w. - 21
    • lata 40. XX w. - 22
    • okres powojenny - 22
    • 1969 - 23
    • teraz - 23
  • Jak to się niedawno odbyło, czyli o tym, kto "wymyślił" metodologię programowania 24
  • Proces koncepcji programów 25
  • Poziomy abstrakcji opisu i wybór języka 26
  • Modelowanie działania algorytmów (maszyna Turinga) 28
  • Poprawność algorytmów 29
  • Zadania 31
  • Rozwiązania i wskazówki do zadań 31

Rozdział 2. Rekurencja 33

  • Definicja rekurencji 33
  • Ilustracja pojęcia rekurencji 35
  • Jak wykonują się programy rekurencyjne? 36
  • Niebezpieczeństwa rekurencji 38
    • Ciąg Fibonacciego 38
    • Stack overflow! 40
  • Pułapek ciąg dalszy 42
  • Stąd do wieczności 43
  • Definicja poprawna, ale... 43
  • Typy programów rekurencyjnych 45
  • Myślenie rekurencyjne 46
    • Przykład 1. Spirala 47
    • Przykład 2. Kwadraty "parzyste" 48
  • Uwagi praktyczne na temat technik rekurencyjnych 50
  • Zadania 51
  • Rozwiązania i wskazówki do zadań 53

Rozdział 3. Systemy obliczeniowe i podstawy kodowania 59

  • System dziesiętny i kilka definicji 60
  • System dwójkowy 60
    • Operacje arytmetyczne na liczbach dwójkowych 61
    • Operacje logiczne na liczbach dwójkowych 62
  • Kod BCD 64
  • System ósemkowy 65
  • System szesnastkowy 65
  • Kodowanie liczb ze znakiem 65
    • Kod znak-moduł (ZM) 66
    • Kod U2 (system uzupełnienia dwójkowego) 66
  • Zmienne w pamięci komputera 67
  • Kodowanie znaków 68
  • Kodowanie obrazów 70
  • Mapy bitowe na przykładzie formatu BMP 71

Rozdział 4. Typy i struktury danych 75

  • Typy podstawowe i złożone 76
  • Tablice 77
  • Ciągi znaków i napisy w C++ 78
  • Typy złożone 80
    • Struktury i wprowadzenie pojęcia referencji 80
    • Klasy i programowanie obiektowe 83
  • Abstrakcyjne struktury danych 83
    • Listy jednokierunkowe 85
    • Tablicowa implementacja list 106
    • Stos 111
    • Kolejki FIFO 116
    • Sterty i kolejki priorytetowe 119
    • Drzewa i ich reprezentacje 125
    • Zbiory 138
  • STL, czyli struktury danych dla leniuchów 140
    • Klasyczne kontenery sekwencyjne 141
    • Adaptery (nakładki na inne kontenery) 147
    • Kontenery asocjacyjne 148
    • Algorytmy w STL 151
    • Dalsze materiały na temat STL 152
  • Zadania 152
  • Rozwiązania zadań 153

Rozdział 5. Analiza złożoności algorytmów 155

  • Definicje i przykłady 156
    • Jeszcze raz funkcja silnia 160
    • Zerowanie fragmentu tablicy 163
    • Wpadamy w pułapkę 165
    • Różne typy złożoności obliczeniowej 166
  • Nowe zadanie: uprościć obliczenia! 168
  • Analiza programów rekurencyjnych 169
    • Terminologia i definicje 169
    • Ilustracja metody na przykładzie 170
    • Rozkład logarytmiczny 171
    • Przeszukiwanie binarne... tym razem bez matematyki wyższej! 173
    • Zamiana dziedziny równania rekurencyjnego 174
    • Funkcja Ackermanna, czyli coś dla smakoszy 174
  • Złożoność obliczeniowa to nie religia! 176
  • Techniki optymalizacji programów 176
  • Zadania 177
  • Rozwiązania i wskazówki do zadań 178

Rozdział 6. Derekursywacja i optymalizacja algorytmów 181

  • Jak pracuje kompilator? 182
  • Odrobina formalizmu nie zaszkodzi! 184
  • Kilka przykładów derekursywacji algorytmów 185
  • Derekursywacja z wykorzystaniem stosu 188
    • Eliminacja zmiennych lokalnych 188
  • Metoda funkcji przeciwnych 190
  • Klasyczne schematy derekursywacji 192
    • Schemat typu while 193
    • Schemat typu if-else 194
    • Schemat z podwójnym wywołaniem rekurencyjnym 196
  • Podsumowanie 198

Rozdział 7. Algorytmy sortowania 199

  • Sortowanie przez wstawianie, algorytm klasy O(N2) 200
  • Sortowanie bąbelkowe, algorytm klasy O(N2) 201
  • Sortowanie szybkie (Quicksort) - algorytm klasy O(N log N) 203
  • Heapsort - sortowanie przez kopcowanie 206
  • Scalanie zbiorów posortowanych 209
  • Sortowanie przez scalanie, algorytm klasy O(N log N) 209
  • Sortowanie zewnętrzne 211
  • Uwagi praktyczne 214

Rozdział 8. Algorytmy przeszukiwania 217

  • Przeszukiwanie liniowe 217
  • Przeszukiwanie binarne 218
  • Transformacja kluczowa (hashing) 220
    • W poszukiwaniu funkcji H 221
    • Najbardziej znane funkcje H 222
    • Obsługa konfliktów dostępu 224
    • Powrót do źródeł 225
    • Jeszcze raz tablice! 226
    • Próbkowanie liniowe 226
    • Podwójne kluczowanie 228
    • Zastosowania transformacji kluczowej 229
    • Podsumowanie metod transformacji kluczowej 230

Rozdział 9. Przeszukiwanie tekstów 233

    • Algorytm typu brute force 233
    • Nowe algorytmy poszukiwań 235
      • Algorytm KMP 236
      • Algorytm Boyera-Moore'a 240
      • Algorytm Rabina-Karpa 242

Rozdział 10. Zaawansowane techniki programowania 245

  • Programowanie typu "dziel i zwyciężaj" 246
    • Odszukiwanie minimum i maksimum w tablicy liczb 247
    • Mnożenie macierzy o rozmiarze N(N 249
    • Mnożenie liczb całkowitych 252
    • Inne znane algorytmy "dziel i zwyciężaj" 253
  • Algorytmy "żarłoczne", czyli przekąsić coś nadszedł już czas... 253
    • Problem plecakowy, czyli niełatwe jest życie turysty piechura 254
    • Wydawanie reszty, czyli "A nie ma pan drobnych?" w praktyce 257
  • Programowanie dynamiczne 258
    • Ciąg Fibonacciego 259
    • Równania z wieloma zmiennymi 260
    • Najdłuższa wspólna podsekwencja 261
  • Inne techniki programowania 264
  • Uwagi bibliograficzne 266

Rozdział 11. Elementy algorytmiki grafów 269

  • Definicje i pojęcia podstawowe 270
    • Etykiety i wartości 271
  • Cykle w grafach 273
  • Sposoby reprezentacji grafów 276
    • Reprezentacja tablicowa 276
    • Słowniki węzłów 278
    • Listy kontra zbiory 279
  • Podstawowe operacje na grafach 279
    • Suma grafów 279
    • Kompozycja grafów 280
    • Graf do potęgi 280
  • Algorytm Roya-Warshalla 281
  • Algorytm Floyda-Warshalla 284
  • Algorytm Dijkstry 287
  • Algorytm Bellmana-Forda 289
  • Drzewo rozpinające minimalne 289
    • Algorytm Kruskala 290
    • Algorytm Prima 291
  • Przeszukiwanie grafów 291
    • Strategia "w głąb" (przeszukiwanie zstępujące) 292
    • Strategia "wszerz" 294
    • Inne strategie przeszukiwania 295
  • Problem właściwego doboru 296
  • Podsumowanie 300
  • Zadania 300

Rozdział 12. Algorytmy numeryczne 301

  • Poszukiwanie miejsc zerowych funkcji 301
  • Iteracyjne obliczanie wartości funkcji 303
  • Interpolacja funkcji metodą Lagrange'a 304
  • Różniczkowanie funkcji 305
  • Całkowanie funkcji metodą Simpsona 307
  • Rozwiązywanie układów równań liniowych metodą Gaussa 308
  • Biblioteka GSL (GNU Scientific Library) 311
  • Uwagi końcowe 311

Rozdział 13. Czy komputery mogą myśleć? 313

  • Przegląd obszarów zainteresowań sztucznej inteligencji (SI) 314
    • Systemy eksperckie 315
    • Sieci neuronowe 317
  • Reprezentacja problemów 318
  • Gry dwuosobowe i drzewa gier 320
  • Algorytm min-max 321

Rozdział 14. Kodowanie i kompresja danych 327

  • Kodowanie danych i arytmetyka dużych liczb 329
    • Metody prymitywne 329
    • Kodowanie symetryczne 331
    • Kodowanie asymetryczne 332
  • Łamanie kodów 338
    • Jakość klucza szyfrującego 338
    • Metody łamania szyfrów 339
  • Techniki kompresji danych 340
    • Kompresja za pomocą modelowania matematycznego 341
    • Kompresja metodą RLE 342
    • Kompresja danych metodą Huffmana 343
    • Kodowanie LZW 348

Rozdział 15. Zadania różne 355

  • Teksty zadań 355
  • Rozwiązania 357

Dodatek A. Poznaj C++ w pięć minut! 361

  • Elementy języka C++ na przykładach 361
  • Pierwszy program 361
    • Dyrektywa #include 362
    • Kod warunkowy w C++ 362
    • Operacje arytmetyczne i zmienne 363
    • Operacje logiczne 363
    • Wskaźniki i zmienne dynamiczne 364
    • Referencje 365
    • Typy proste i typy złożone 365
  • Podprogramy 367
    • Procedury 367
    • Funkcje 367
  • Instrukcja wyboru (switch) 368
  • Iteracje 369
  • Struktury rekurencyjne 369
  • Parametry programu main() 370
  • Operacje na plikach w C++ 370
  • Programowanie obiektowe w C++ 371
    • Terminologia 372
    • Obiekty na przykładzie 373
    • Składowe statyczne klas 376
    • Metody stałe klas 376
    • Dziedziczenie własności 376

Dodatek B. Kompilowanie programów przykładowych 381

  • Zawartość archiwum ZIP na FTP-ie 381
  • Darmowe kompilatory C++ 382
    • GCC (GNU Compiler Collection) 382
    • Microsoft Visual Studio Community 384
    • macOS 386
    • Dev-C++ (Orwell) 386
  • Kompilacja i uruchamianie programów w C++ 387
    • GCC 387
    • Microsoft Visual Studio 388
    • Dev-C++ 395
    • Cygwin 395

Literatura 397

Spis ilustracji 399

Spis tabel 404

Skorowidz 406

Nazwa Wartość
Książka - Autor Piotr Wróblewski
Książka - ISBN 978-83-283-5374-9
Książka - Oprawa miękka
Książka - Wydawnictwo Helion S.A.
Tematyka Podstawy
Szerokość 16 cm
Wysokość 23,5 cm
Głębokość 2 cm
Waga 0,559 kg

Darmowa dostawa od 500,00 zł

Przy zamówieniach o wartości 500,00 zł i więcej koszt przesyłki pokrywamy my, niezależnie od wybranego przewoźnika. Dotyczy dostawy do kraju: Polska.

Sposób dostawy Czas dostawy Koszt
GLS Automaty Dostawa 24h od 8,99 zł
InPost Paczkomat® 24/7 Dostawa 24h (ubezpieczenie do 200 zł) od 13,99 zł
InPost Kurier Dostawa 24h od 14,99 zł
Kurier GLS Dostawa 24h od 14,99 zł
InPost Paczka w Weekend Dostawa w sobotę od 19,99 zł
InPost Kurier (pobranie) Dostawa 24h od 22,99 zł
Ambro Express (bez wniesienia) Dostawa 1-2 dni od 150,00 zł
Ambro Express (z wniesieniem) Dostawa 1-2 dni od 200,00 zł

Szczegółowe warunki dostawy znajdziesz na stronie Dostawa i płatności.

Zasady składania reklamacji towaru

Zgodnie z obowiązującymi przepisami, ponosimy odpowiedzialność na zasadach określonych w Kodeksie Cywilnym za wady fizyczne i prawne.

Po wykryciu wady Kupujący ma prawo:

  • złożyć oświadczenie o żądaniu obniżenia ceny,
  • złożyć oświadczenie o odstąpieniu od umowy, ale nie wtedy kiedy wada jest nieistotna,
  • żądać wymiany rzeczy na wolną od wad,
  • żądać usunięcia wady.

Informujemy, że Dział Reklamacji firmy Botland rozpatruje zgłoszenia w ciągu 14 dni kalendarzowych od daty ich wpłynięcia. Botland odpowiada z tytułu rękojmi jeśli wada fizyczna zostanie stwierdzona przed upływem dwóch lat od momentu wydania rzeczy.

Informacje dotyczące korzystania z prawa odstąpienia od umowy

Zgodnie z aktualnymi przepisami prawnymi Konsument ma prawo odstąpić od umowy kupna-sprzedaży w terminie 30 dni bez podania przyczyny. Termin ten wygasa po upływie 30 dni od momentu, w którym Konsument wszedł w posiadanie rzeczy lub w którym osoba trzecia inna niż przewoźnik i wskazana przez Konsumenta weszła w posiadanie rzeczy.

Informujemy, że zgodnie z obowiązującymi przepisami oraz §4 Regulaminu zwrot towaru przysługuje wyłącznie Konsumentom (zakup niezwiązany bezpośrednio działalnością gospodarczą lub zawodową). Zwroty nie przysługują Klientom (zakup związany bezpośrednio działalnością gospodarczą lub zawodową).

Przebieg reklamacji / zwrotu

W celu zgłoszenia reklamacji prosimy postępować zgodnie z instrukcją:

  1. Zapoznaj się z zasadami reklamacji / zwrotu.
  2. Wypełnij formularz, który znajduje się poniżej.
  3. Zapoznaj się z treścią otrzymanej odpowiedzi.
  4. Po otrzymaniu wiadomości e-mail ze statusem „Oczekiwanie na przesyłkę”, zabezpiecz i zapakuj niesprawny produkt.
  5. Wyślij przesyłkę na podany niżej adres wraz z wydrukowanym formularzem oraz dowodem zakupu.
Formularz reklamacyjny

W celu rozpoczęcia procedury reklamacyjnej / zwrotu, wypełnij formularz.

Adres do wysyłki

BOTLAND - SERWIS
Gola 25A
63-640 Bralin

Zasady reklamacji

W celu sprawnego przeprowadzenia procesu reklamacji, prosimy o zapoznanie się z opisanymi poniżej zasadami:

  1. Przed odesłaniem sprzętu prosimy o upewnienie się, iż produkt faktycznie jest niesprawny.
  2. W celu sprawnego przebiegu reklamacji prosimy o wypełnienie formularza reklamacyjnego oraz dołączenie go do przesyłki.
  3. Do reklamowanych produktów prosimy dołączyć dowód zakupu (np. paragon, fakturę lub potwierdzenie wykonania przelewu).
  4. Towar należy starannie zapakować, aby zapewnić bezpieczny transport i zapobiec kolejnym uszkodzeniom.
  5. Firma Botland nie odbiera paczek reklamacyjnych wysłanych za pobraniem oraz paczek nadawanych do automatów paczkowych np. urządzeń Paczkomat.
  6. Zwrot kosztów przesyłki następuje po uznaniu reklamacji. Jest to kwota zgodna z najtańszą oferowaną formą dostawy.
  7. Po uznaniu reklamacji zwrot środków nastąpi w ciągu 14 dni. Zwrotu dokonamy przy użyciu takich samych sposobów płatności oraz w tej samej walucie, jakie zostały użyte w pierwotnej transakcji, chyba że Kupujący wyraził zgodę na inne rozwiązanie lub je zaproponował.
  8. Sprzęt prosimy odsyłać kompletny razem z akcesoriami. Produkty niekompletne zostaną odesłane bez rozpatrzenia na koszt nadawcy.
  9. Samodzielna naprawa, przeprowadzona przez osoby nieuprawnione, tj. niebędąca naprawą przez firmę Botland, pozbawia Kupującego prawa do dalszego reklamowania.
  10. O sposobie rozpatrzenia reklamacji Kupujący zostanie poinformowany drogą elektroniczną (poprzez wiadomość e-mail).
  11. Szczegółowe informacje dotyczące aktualnych kosztów wysyłki znajdują się na stronie www.botland.com.pl w zakładce Dostawa.
  12. Odesłanie sprzętu jest równoznaczne z zapoznaniem się z powyższymi zasadami.

Zasady zwrotu towaru

  1. W celu skorzystania z prawa odstąpienia od umowy, Konsument zobowiązany jest poinformować Sprzedającego o swojej decyzji poprzez jednoznaczne oświadczenie.
  2. W celu sprawnego przeprowadzenia procesu zwrotu prosimy o wypełnienie formularza. Konsument może również skorzystać z innego oświadczenia niż zamieszczony formularz.
  3. W przypadku odstąpienia od umowy zwracamy wszystkie otrzymane płatności, w tym koszty dostarczenia rzeczy do Konsumenta (z wyjątkiem dodatkowych kosztów wynikających z wybranego przez Konsumenta sposobu dostarczenia innego niż najtańszy przez nas oferowany). Konsument ponosi koszty przesyłki zwrotnej. Zwrot środków nastąpi w ciągu 14 dni od dnia, w którym zostaliśmy poinformowani o decyzji odstąpienia od umowy. Zwrotu dokonamy przy użyciu takich samych sposobów płatności oraz w tej samej walucie, jakie zostały użyte w pierwotnej transakcji, chyba że Konsument wyraził zgodę na inne rozwiązanie lub je zaproponował.
  4. Możemy wstrzymać się ze zwrotem płatności do czasu otrzymania rzeczy lub dostarczenia nam dowodu jej odesłania, w zależności od tego, które zdarzenie nastąpi wcześniej.
  5. Prosimy o odesłanie lub przekazanie nam rzeczy niezwłocznie, a w każdym razie nie później niż 14 dni od dnia, w którym zostaliśmy poinformowani o odstąpieniu od umowy. Prosimy również o staranne zapakowanie towaru przed wysyłką.
  6. Konsument odpowiada tylko za zmniejszenie wartości produktu wynikającej z korzystania w sposób inny niż było to konieczne do stwierdzenia cech i funkcjonalności.
  7. Firma Botland nie odbiera paczek zwrotnych wysłanych za pobraniem oraz paczek nadawanych do automatów paczkowych np. urządzeń Paczkomat.

Zadaj pierwsze pytanie o ten produkt!

Instrukcje i dokumenty

Dane GPSR

Kraj pochodzenia Polska
Dane kontaktowe producenta Helion.pl sp. z o.o. ul. Kościuszki 1c 44-100 Gliwice [email protected]
Dane kontaktowe wprowadzającego na rynek UE Helion.pl sp. z o.o. ul. Kościuszki 1c 44-100 Gliwice [email protected]
Inni klienci oglądali również

Brak opinii dla tego produktu.