Kurs C++ odc. 16: Struktury danych: stos, kolejka, lista, drzewo binarne

แชร์
ฝัง
  • เผยแพร่เมื่อ 4 ก.ค. 2024
  • Jeżeli masz ochotę zobaczyć więcej naszych filmów, podcastów i artykułów w coraz lepszej jakości, to zachęcamy do pozostawienia subskrypcji, a także do odwiedzenia prowadzonych przez nas witryn oraz do polubienia fanpage'u Pasji informatyki na Facebooku.
    🔔 Subskrybuj - bit.ly/pasja-sub
    Jeśli masz ochotę wesprzeć to co robimy, to możesz:
    🖐 Zostać Patronem - patronite.pl/pasja-informatyki
    ☕️ Ufundować nam wirtualną kawę - buycoffee.to/pasja-informatyki
    👉 Fanpage na Facebooku - bit.ly/pasja-fb
    👉 Profil Patronite - patronite.pl/pasja-informatyki
    👉 Lista Patronów - pasja-informatyki.pl/patroni
    👉 Donacje na blogu - miroslawzelent.pl/donate
    👉 Harmonogram publikacji - bit.ly/pasja-harmonogram
    👉 Kontakt z nami - pasja-informatyki.pl/kontakt/
    👉 Współpraca reklamowa - bit.ly/pasja-wspolpraca
    👉 Kursy video dla technikum - pasja-informatyki.pl
    👉 Blog informatyczny - miroslawzelent.pl
    👉 Trenażer egzaminacyjny - egzamin-informatyk.pl
    👉 Egzamin-E13.pl - egzamin-e13.pl
    👉 Forum dyskusyjne - forum.pasja-informatyki.pl/
    👉 Witryna podcastowa - podcast.pasja-informatyki.pl/
    👉 Twitter MZ - / miroslawzelent
    👉 Twitter DS - / stelmach_damian
    Zapraszam do wspólnego przepracowania produkcji na temat struktur danych. Jest to odcinek ważny, fundamentalny wręcz dla rozwoju każdego kodera, i jednocześnie dość bogaty w treść wymagającą konceptualnego zrozumienia. Jak zwykle będzie to skondensowana i zorganizowana dawka nowej wiedzy.
    🕐 TIMESTAMPS (CHWILE CZASOWE):
    00:00 Czym są struktury danych?
    05:46 Stos
    12:13 Stos w praktyce
    17:47 Kolejka
    20:17 Kolejka w praktyce
    24:45 Lista
    28:22 Lista jednokierunkowa
    29:56 Lista dwukierunkowa
    31:09 Lista z wartownikiem, cykliczna
    33:28 Lista w praktyce
    37:47 Drzewo binarne
    45:20 Drzewo binarne w praktyce
    💾 POBIERZ PLIKI Z ODCINKA:
    miroslawzelent.pl/kurs-c++/str...
    📑 CODE REVIEW NA FORUM:
    bit.ly/code-reviews-odcinkow
    🎵 MUZYKA:
    Labisch - Passion: • Labisch - Passion [Cre...
    Support Labisch: / labischproductions
    Release: / passion-by-labisch
    License: creativecommons.org/licenses/b...
    A Creative Commons Attribution License (CC BY) states that the material can be shared, remixed and used commercially (bit.ly/CCAttribution).
    #pasjainformatyki #cplusplus #programowanie

ความคิดเห็น • 170

  • @janek03
    @janek03 ปีที่แล้ว +85

    9 lat później ja, student, niczym syn marnotrawny po nieukończonym kursie z c++ w liceum powracam na ten kanał prowadzony przez wielkiego człowieka. Panie Mirosławie, dziękuję za ten poradnik. Pomógł mi zrozumieć ww. zagadnienia.

  • @rafalozog95
    @rafalozog95 8 ปีที่แล้ว +106

    Kolejny raz jestem pełen podziwu, który trudno mi wyrazić dla Pana pracy. Temat, którego w żaden sposób nie potrafiłem rozgryźć na wykładach okazał się zrozumiały. Jeszcze raz wielkie ukłony i brawa. Mam nadzieję, że pewnego dnia zrealizuje Pan kurs o Javie (choć domyślam się, że pewnie jest Pan teraz zbyt zajęty).

  • @czechue
    @czechue 7 ปีที่แล้ว +194

    MEGA SZACUN Za ogrom pracy włożony w ten (i inne) odcinki.

  • @tadekpawowski9906
    @tadekpawowski9906 4 ปีที่แล้ว +27

    Jest Pan WIELKI a jest to cecha tylko ludzi skromnych, pozbawionych pychy i nieprzeciętnych. Ogromny szacunek dla Pana pracy w tylu playlistach. Mam nieoceniony zaszczyt i świadomość że korzystam z wiedzy uporządkowanej, fundamentalnej. Panie Mirku dużo zdrowia i radości z tego co Pan lubi i co Pan robi na ten i przyszłe lata.

  • @Chili0xFF
    @Chili0xFF 4 หลายเดือนก่อน +2

    9 lat po wydaniu, tydzień przed egzaminem inżynierskim wracam tutaj, aby przypomnieć sobie różnice między wszystkimi strukturami. Niesamowite jak moja kariera ucznia zatoczyła koło. Zaczynałem tutaj, i kończę tutaj.

  • @dawid.ramone
    @dawid.ramone 7 ปีที่แล้ว +42

    będę już kolejną osobą, która to napiszę, ale - DZIĘKUJE ZA TEN KURS!

  • @dylek382
    @dylek382 6 ปีที่แล้ว +25

    Ludzie gadają i płaczą że rezygnują z odcinka na odcinek a mi się to coraz bardziej podoba! :D

  • @adamolesiak6528
    @adamolesiak6528 7 ปีที่แล้ว +31

    Odcinek o wątkach, proszę ślicznie

  • @paweostrowski802
    @paweostrowski802 3 ปีที่แล้ว +4

    Niesamowite jest to, w jak prosty i zrozumiały sposób przekazujesz swoją wiedzę innym. Oby kiedyś nauczyciele potrafili przekazywać wiedzę w taki przystępny i ciekawy sposób :D

  • @MatmarSpace
    @MatmarSpace 4 ปีที่แล้ว +3

    Chciałbym serdecznie Panu podziękować za cały ten kurs, który nauczył bardzo dużo mnie jak i zapewne wiele innych osób. Ten kurs obrasta już w tych kręgach legendą... Każdy, kogo ja znam, kto uczy się programowania na własną rękę zna ten kurs. Chcę, aby Pan wiedział jak ogromny wkład wniósł Pan w rozwój tysięcy młodych talentów. Jednym słowem: Dziękuję! :)

  • @urbix0166
    @urbix0166 6 ปีที่แล้ว

    Bardzo przyjemny odcinek ;] miło się ogląda

  • @leonwolf3254
    @leonwolf3254 4 ปีที่แล้ว +1

    Super odcinek, dziękuje :)

  • @jakubgratkiewicz5162
    @jakubgratkiewicz5162 7 ปีที่แล้ว

    Było warto ! Super seria !

  • @marekchoinski2939
    @marekchoinski2939 7 ปีที่แล้ว +4

    Genialny materiał z włożonym ogromem pracy. Szacunek

  • @BB-ek8nv
    @BB-ek8nv 5 ปีที่แล้ว

    Dobrze wytłumaczone, dzięki

  • @jurekfilipowski5542
    @jurekfilipowski5542 4 ปีที่แล้ว +1

    Piekna praca bozeee kocham cie

  • @garper5063
    @garper5063 4 ปีที่แล้ว

    Bardzo dziękuję, za zwięzłe oraz domyślne wytłumaczenie tematu Struktur danych.

  • @oskarstrz177
    @oskarstrz177 10 ปีที่แล้ว

    Super robota !!

  • @adamkocjan8387
    @adamkocjan8387 10 ปีที่แล้ว +2

    Fajne i pomocne :)

  • @zaspanyflegmatyk2446
    @zaspanyflegmatyk2446 6 ปีที่แล้ว +2

    Pana odcinki oglądać zawsze warto ;)

  • @Wlodixpro
    @Wlodixpro 5 ปีที่แล้ว

    JUTRO KOLOS dziękuję :)

  • @shikamaru4271
    @shikamaru4271 4 ปีที่แล้ว +1

    Świetnie wytłumaczone, no po prostu genialnie. Wielki szacunek dla Pana za cały kurs. Pozdrawiam.

  • @Gornl
    @Gornl 10 ปีที่แล้ว

    czekałem na ten odcinek Panie Mirosławie:D Bo nie wiedziałem czy ta wiedza mi sie przyda dzieki Panu znów wielką pasja biorę się za naukę

  • @marcinbiaecki9731
    @marcinbiaecki9731 5 ปีที่แล้ว

    Dzięki :D

  • @przemek_woźniak
    @przemek_woźniak 2 ปีที่แล้ว

    Kolejny za mną. Dzięki wielkie

  • @bartlomiejlakomski3598
    @bartlomiejlakomski3598 8 หลายเดือนก่อน

    Super odcinek!

  • @karol6767
    @karol6767 7 ปีที่แล้ว

    ogromny szacunek dla pańskiej osoby za wkład tak dużej pracy w te odcinki i za przekazywanie tej wiedzy w niezwykle dobry sposób pozdrawiam.:)

  • @radekkrycia7316
    @radekkrycia7316 2 ปีที่แล้ว

    naprawdę to niesamowicie imponujące i niespotykane, w jak przystępny i pasjonujący sposób potrafi Pan przekazywać wiedzę.

  • @Luxer
    @Luxer 4 ปีที่แล้ว +1

    Nie wiem czy coś się zmieniło, ale wygodniej jest używać gotowych containerów, przynajmniej dla leniwych osób, takich jak ja, bo po co pisać dlugi kod za każdym razem, skoro można implementować już gotowe:
    //stos (nazwa

  • @StasBar
    @StasBar 10 ปีที่แล้ว

    Dobry pomysł z tymi sprawdzianami, pytania dość łatwe po obejrzeniu tego filmu, a jednak trzeba chwile pomyśleć zwłaszcza z tym ostatnim drzewem :D

  • @leviathan3803
    @leviathan3803 8 ปีที่แล้ว +5

    Gratuluję sukcesu kanału i życzę dalszego rozwoju ! Z twoich poradników naprawdę wiele się nauczyłem , są bardzo pomocne. Dobrze tłumaczysz i naprawdę świetnie się ciebie słucha !

  • @kubam15
    @kubam15 9 ปีที่แล้ว

    Haha, oglądam sobie Pana poradnik i w 4:00 minucie pokazała mi się moja drukarka :D

  • @65XEpl
    @65XEpl 9 ปีที่แล้ว +18

    Generalnie kawał dobrej roboty. Mam jednak dwa pytania.
    1. Dlaczego nie uczysz w nowym standardzie?
    2. Jak mawia papież C++ "Jeśli musisz użyć jakiegoś kontenera, to na 90% będzie to vector". Dziwię się, że zabrakło go w Twoim odcinku.
    Tak, czy siak pozdrawiam. Fajny kurs. (szkoda tylko, że standard 98 )

    • @piotrkowalczyk9608
      @piotrkowalczyk9608 5 ปีที่แล้ว

      #złota łopata
      Też mnie to zdziwiło. Nie znam za dibrze programowania, ale vector, to mój dobry znajomy.

    • @krzysztofkononowicz6224
      @krzysztofkononowicz6224 5 ปีที่แล้ว

      Vector należy do stl'a, a stl nie należy do standardu ani 11 ani 17. Jest to biblioteka ułatwiająca implementacje podejścia tablicowego.

  • @pocian8974
    @pocian8974 7 ปีที่แล้ว

    Odcinek mnie zainspirował do pogrzebania w internecie o strukturach danych a i pomógł mi rozwiazać 2 zadania na SPOJU :D

  • @marcinlesniewski4571
    @marcinlesniewski4571 4 ปีที่แล้ว

    Elegancko

  • @ukaszmiklasz61
    @ukaszmiklasz61 9 ปีที่แล้ว

    Bardzo dobry kurs. Polecam. Jednak brakuje mi tu jednej rzeczy, użyciu stałych. Jest to znaczne uproszczenie przy wielkości naszych tablic itp. Pozdrawiam. :)

  • @marcinlesniewski4571
    @marcinlesniewski4571 4 ปีที่แล้ว +1

    39:56 tutaj chyba niepotrzebnie jest narysowana struktura od początku, bo przed wprowadzeniem liczb jest nieznana. Początkowo jest korzeń, później korzeń + węzeł z lewej itd.

  • @bgcsoftware1620
    @bgcsoftware1620 9 ปีที่แล้ว

    Daję okejkę

  • @adamolesiak6528
    @adamolesiak6528 8 ปีที่แล้ว

    Ten odcinek wydał mi się do tej pory najciekawszym zagadnieniem z programowania. Czy zna ktoś jakieś książki/strony z których można się dowiedzieć więcej o bazach danych?

  • @mikoajkrolik6403
    @mikoajkrolik6403 4 ปีที่แล้ว

    właśnie zdałeś mi propgramowanie

  • @happener
    @happener 4 ปีที่แล้ว +5

    Dla modulo gdy dzielna jest mniejsza od dzielnika:
    1 % 5 --> 0 * 5 + 1 == 1 --> r = 1
    2 % 5 --> 0 * 5 + 2 == 2 --> r = 2

    • @robertwy4358
      @robertwy4358 7 หลายเดือนก่อน

      Dziękuję za wyjaśnienie!

  • @daru1683
    @daru1683 6 ปีที่แล้ว +2

    Sprawdzian zaliczony 8/8 :D

  • @whoami2760
    @whoami2760 3 ปีที่แล้ว +5

    Przydała by się jakaś aktualizacja tematu w Pana wykonaniu Panie Mirku. Ten kurs jest już nieco przestarzały i opiera się na starych technologiach. A może by tak Nowy kurs w VC ze standardem C++ 20 ?

  • @grado5471
    @grado5471 5 ปีที่แล้ว +1

    Nice shot my friends

  • @panukasz9899
    @panukasz9899 9 ปีที่แล้ว +80

    Szkoda, że nie zdążył Pan pokazać jak używać tych struktur, no bo teraz wiem jak działają poszczególne struktury, ale nie wiem ja je zaimplementować do kodu.

    • @bonieslaw
      @bonieslaw 9 ปีที่แล้ว +38

      pan łukasz Jeśli będzie pan cierpliwie dalej śledził ów kurs programowania i zawędruje pan do programowania obiektowego to wiele się wyjaśni :) Obiekty bardzo w skrócie to coś, co zawiera wiele zmiennych. Dla przykładu obiekt wycieczkowicz może posiadać takie zmienne jak int nr_id; int wiek; string imie; string nazwisko;. Teraz stwórzmy listę wyciekowiczów. Możemy przeglądać ich profile pojedynczo, oglądać element lewy, prawy, wyświetlać listę posortowaną alfabetycznie po imieniu czy numerze id. Dodajmy do tego jeszcze poprzedni kurs, gdzie można taką listę zapisywać i wczytywać z pliku txt i sam pan widzi, że mamy do dyspozycji użyteczną aplikację :)

  • @imienazwisko7400
    @imienazwisko7400 2 ปีที่แล้ว

    ale fajne to wszystko i wygodne

  • @toslaw9615
    @toslaw9615 3 ปีที่แล้ว +3

    Ja używam vectorów do zaalokowania dynamicznie miejsca na nieznaną z góry liczbę elementów.

    • @QWERTIOX
      @QWERTIOX 3 ปีที่แล้ว

      vector to jest merge wcześniejszych struktur

  • @MatiWieczorek
    @MatiWieczorek 10 ปีที่แล้ว

    Kolejny bardzo dobry film w Pana wykonaniu.
    Może w przyszłości opracowuje Pan film na temat algorytmów tekstowych i biblioteki string w C++, oraz podał różnice czasowe omawianych algorytmów rozwiązujących ten sam problem?

  • @TheARCZI14
    @TheARCZI14 10 ปีที่แล้ว +2

    25:20 Użyć kontener tablicy ;)

  • @niccolomachiavelli5118
    @niccolomachiavelli5118 7 ปีที่แล้ว

    Fajna tapeta.

  • @lordjim9971
    @lordjim9971 8 ปีที่แล้ว

    W przykładzie z listą wywołuje ją pan w funkcji. Jak zadeklarować w nagłówku funkcji listę, żeby uniezależnić funkcję od nazw list w programie.

  • @terracottapie6872
    @terracottapie6872 7 ปีที่แล้ว +29

    28:30 Hej, czy to przypadek, że wstawił jako elementy tej listy liczby 89, 144 i 233, będące kolejnymi liczbami Fibonacciego?

    • @K886_
      @K886_ 4 ปีที่แล้ว +12

      Przypadek?
      Nie sądze!

  • @chrischris6359
    @chrischris6359 ปีที่แล้ว +1

    Lubię sobie czasem pofantazjować że jest Pan moim ojcem.

  • @domeropl
    @domeropl 7 ปีที่แล้ว

    Muzyka z początku filmu kojarzy mi się z podkładem muzycznym do "Lubelskiego Fula" ;D

  • @szevaa97
    @szevaa97 4 ปีที่แล้ว +9

    Dlaczego mój wykładowca tak nie tłumaczy? :D

  • @damianwysocki9753
    @damianwysocki9753 7 ปีที่แล้ว

    Znowu rozbiłem odcinek na dwa podejścia, żeby mózg wszystko ze zrozumieniem chłonął. :D

  • @aki1840
    @aki1840 2 ปีที่แล้ว +1

    Korzystam z wielu żródeł podczas nauki ale żadne z nich nie dorównuje sposobem jej przekazywania na tym kanale.
    Jednocześnie to w jaki sposób potrafi Pan przekazać wiedzę wpływa na wybór języka programowania (przynajmniej w moim przypadku).
    Ogromny szacunek dla Pana.

  • @jakubkootyo1745
    @jakubkootyo1745 6 ปีที่แล้ว +9

    44:22 ale tablice numerujemy od zera!

    • @QWERTIOX
      @QWERTIOX 3 ปีที่แล้ว

      tak, ale ta jedna komórka pamięci nie robi wielkiej różnicy/możemy ją do czegoś zawsze użyć (jak normalną zmienną)

  • @QWERTIOX
    @QWERTIOX 3 ปีที่แล้ว

    45:00 Nie trzeba drugiej tablicy do tego, jeżeli przyjmiemy, że 0 oznacza, że tam nie mamy żadnych danych

    • @Ev3r0x
      @Ev3r0x 3 ปีที่แล้ว

      0 to też cyfra i może być wartością węzła

  • @TheMikeros
    @TheMikeros 8 ปีที่แล้ว

    Może nie odkryje tym Ameryki ale w c++ w bibliotece STL jest dostępny kontenere stack , ( ja nie musiałem ściągać tej biblioteki, mam Visual Studio ), wystarczy dodac #include i możemy stworzyć stos np. intow :
    stack mojStos;
    Jasne że jestem ogromnie wdzięczny za Pana prace, ale tak naprawdę to tutaj mamy taką trochę sztuczną jak dla mnie imitacje stosu, po prostu tablica elementow w sumie wyświetlana od tyłu.
    Rozumiem cele dydaktyczne, ale wydaje mi się że jak jest już opracowana biblioteka , to po co wynajdować koło na nowo?
    No i pewną wadą tego rozwiązania jest że mamy ogarniczoną liczbę elementów, a główną zaletą wszelakich kontenerów jest to że możemy dynamicznie zmieniać jego rozmiar.
    By tu to osiągnąc pewnie pasowałoby to przez zastosownie tablic dynamicznych.
    Pozdrawiam wszystkich, rozwijajcie się dalej :D
    Prawdopodobnie istnieją też w STL inne kontenery, jeszcze to sprawdze.

    • @MrKulemo
      @MrKulemo 8 ปีที่แล้ว +2

      +TheMikeros Warto wiedzieć jak zaimplementowane są takie struktury danych. I warto umieć je sobie zasymulować. Po co? Nie zawsze będziesz miał dostępną bibliotekę z danym rozwiązaniem. Czasami będziesz potrzebował napisać ją na własne potrzeby od zera. Albo będziesz po prostu korzystał z języka, który danej struktury nie posiada. Ponadto, jeżeli coś Ci się "wykrzaczy", będziesz w stanie z większym prawdopodobieństwem przybliżyć źródło błędu kojarząc budowę danej struktury, a nie błądząc dookoła niej jak przysłowiowe "dziecko we mgle" :)

    • @Xeverous
      @Xeverous 8 ปีที่แล้ว

      Nawet nie wiesz jak duża jest STL. Jest tam tona ciężkich narzędzi na bardzo rozległych szablonach (C++ 11 Variadic Templates) które umożliwiają sortowanie czegokolwiek (nawet twojej stworzonej klasy) tylko po wybranych polach lub wg twojej wlasnej funkci.
      Z podobnych ja np używałem std::shuffle do tasowania zbiorów klasy Card (do wszelkich gier karcianych) (karty jako klasa mają kolor, wartość, widoczność, statycznie wspólny rewers)
      Z najbardziej niesamowicie użytecznych szablonów polecam std::bind

  • @Klusio19
    @Klusio19 2 ปีที่แล้ว

    W zasadzie mówił Pan o drzewie BST (które jest szczególnym drzewem binarnym) a nie o ogólnie drzewie binarnym

  • @hanah-dh4cy
    @hanah-dh4cy 8 ปีที่แล้ว

    Witam.[KOLEJKA]Po wprowadzeniu pięciu danych o tych samych wartościach np. pięciu dwójek gdy chce usunąć wartość z kolejki funkcją pop program usuwa ostatnią liczbę zamiast pierwszej w kolejce.

  • @Xenox_dev
    @Xenox_dev 10 ปีที่แล้ว

    jeszcze kilka struktur danych jest, a co do grafu to ja preferuje wlasny szablon

  • @NeroTestero
    @NeroTestero 10 ปีที่แล้ว +4

    W pewnym sensie to jest prawdą:
    stos + kolejka = lista
    :]

  • @hakerunknown4375
    @hakerunknown4375 2 ปีที่แล้ว +1

    cout

  • @ysy7777
    @ysy7777 ปีที่แล้ว +1

    Odcinek spoko, ale zdecydowanie brakuje vectorów.😢

  • @Xenox_dev
    @Xenox_dev 10 ปีที่แล้ว

    Ja sobie radze z iteratorami makrem. Jest to szybsze i wygodniejsze niż ciągłe tworzenie nowych iteratorów.
    Film jak zawsze świetny. Osobiście uczyłem się kolejki na bazie tej w sklepie, a priorytetowej jak w kolejce, w której są VIPY.
    Mam jeszcze takie pytanko: Czy będzie coś więcej o algorytmice w przyszłości?

    • @Xenox_dev
      @Xenox_dev 10 ปีที่แล้ว

      co do szukania, stąd nazwa binary-search(), który jest szybszy zwykle od line-search()
      Kopiec trochę przypomina drzewo przydziałowe. Robienie drzew maksów i minimów to przydatna rzecz.
      do OI potrzebuję trochę większej wiedzy z algorytmiki :)

  • @re4ctgaming756
    @re4ctgaming756 5 ปีที่แล้ว +1

    No dobrze, stosy stosami, kolejki kolejkami... każda z tych struktury pomoże nam w czymś innym.
    Czy istnieje natomiast struktura szybsza od rozwiązania obejmującego wykorzystanie tablic (lub odpowiednio zaprojektowanej tablicy) i wskaźników, która reprezentowałaby z powodzeniem statyczną macierz odległości? Załóżmy, że algorytm musi bardzo często uzyskiwać dostęp do jej różnych elementów, więc zależy nam na czasie.

  • @Boshun1
    @Boshun1 10 ปีที่แล้ว

    A jak pisanie własnego stosu/kolejki ma się do STL? czy zaimplementowane rozwiązania są wydajniejsze ? czy nadal powinno się pisać swoje struktury?
    i jeszcze pytanie mam, czy będzie Pan przedstawiał jeszcze drzewa AVL oraz B-drzewa?

  • @mirekfigura5975
    @mirekfigura5975 4 ปีที่แล้ว

    haha " lepiej, żebym nie przekroczył deadline ..." dobre

  • @xXEmilXx100
    @xXEmilXx100 5 ปีที่แล้ว

    Lepiej sprostować, że prezentowania tutaj reguła drzewa binarnego odnosi się do binarnego drzewa wyszukiwań(!) ponieważ zwykłe drzewo binarne może mieć nawet większe wartości w lewym poddrzewie i nie jest to określone

  • @MrKaspx
    @MrKaspx 6 ปีที่แล้ว

    W jakim programie tworzy pan te wszystkie animacje i grafiki z filmow?

  • @ltsMeNoodle
    @ltsMeNoodle 5 ปีที่แล้ว +1

    Mam pytanie... A co się stanie, gdy w drzewie binarnym nie będzie liczby, którą chcemy wyszukać funkcją find()? Z góry dzięki ;)

  • @Erlkonig24
    @Erlkonig24 8 ปีที่แล้ว

    Brakuje implementacji metody insert() w Liście. Ale nie zmienia faktu, że wszystko jest wyjaśnione w bardzo przyjazny i łatwy sposób. Dziękuję.

    • @HeavyClassicalX
      @HeavyClassicalX 8 ปีที่แล้ว

      +Erlkonig24 Właśnie. A ja mam problem by to wstawić. Poradziłeś sobię z tym void insert()?

    • @Erlkonig24
      @Erlkonig24 8 ปีที่แล้ว

      +HeavyClassicalX Tak. Jak wroce eo domu to postaram sie zamiescic linka do jakiegoś pastebina albo cuś ;)

    • @bfs7668
      @bfs7668 7 ปีที่แล้ว +3

      miną rok, a on dalej czeka xD

    • @tomekg9648
      @tomekg9648 3 ปีที่แล้ว

      @@HeavyClassicalX
      void insert()
      {
      int liczba,pozycja;
      coutliczba>>pozycja;
      list::iterator it = lista.begin();
      advance(it, pozycja);
      lista.insert(it, liczba);
      }
      masz tu ziomalu u mnie dziala

  • @buyersremorse7106
    @buyersremorse7106 5 หลายเดือนก่อน

  • @hukuxms
    @hukuxms 5 ปีที่แล้ว +4

    W sumie to metoda drzewiasta przypomina mi trochę sortowanie quicksort :d

  • @ZwiadowcavVv
    @ZwiadowcavVv 10 ปีที่แล้ว

    A będzie coś o bibliotekach danych?

  • @wranglutek
    @wranglutek 9 ปีที่แล้ว

    Tak sobie przegladalem Twojego Twittera, gdzie piszesz, ze na razie za wczesnie na vectory. Ale czy lista to tak naprawde nie jest vector?;>

  • @MrLoyt
    @MrLoyt 9 ปีที่แล้ว

    Panie Mirosławie. Czy poleciłby Pan jakiś dobry kompilator C++ na Androida?

  • @ukaszpietrzykowski1081
    @ukaszpietrzykowski1081 5 ปีที่แล้ว

    Bardzo obrazowo wytłumaczone. Szkoda, że nie ma filmów Pańskiego autorstwa na temat pisania programów używających list, drzew binarnych i grafów. No nic, im dalej w las, tym więcej drzew, a zawód programisty polega także na tym aby cały czas samemu się kształcić, co jest możliwe dzięki solidnym podstawom, za które bardzo dziękuję. Pozdrawiam

  • @tommcfly2731
    @tommcfly2731 10 ปีที่แล้ว

    W programie "stos" jako liczbę dla PUSH wpisałem literę P. Stos zapełnił się zerami i program "zawiesił się". Teraz próbuję wymyślić dlaczego tak się dzieje - jakieś wskazówki? Aha, zawiesza się również po próbie dodania bardzo dużej liczby, czyli może chodzi tu o max wartość dla zmiennej typu int...

    • @tommcfly2731
      @tommcfly2731 10 ปีที่แล้ว

      ***** Dzięki! No tak, większość odcinków już za mną, ale jeszcze nie wszystkie. W ogóle na obsługę błędów na razie nie zwracałem zbyt dużej uwagi, teraz staram się odrobić zaległości w tym temacie.

  • @TheAgentAPM
    @TheAgentAPM 7 ปีที่แล้ว

    Struktura kopca ma coś do czynienia z sortowaniem stogowym?

  • @limono3730
    @limono3730 3 ปีที่แล้ว

    23:35 Ucze się z twojego kursu i znalazłem błąd w tym kodzie (to chyba znaczy, że dobry jest ten kurs). Linijki 58-65 są czałkowicie nie potrzebne a nawet wrecz przeciwnie jest w nich błąd, poniewarz jeżeli głowa jest ustawiona na 4 komurce i nie ma żadnego elemętu w kolejce to przez if (ile==0) wtedy ustawimy ogon na komurke 5 która nie nalerzy do nas i pruba zapisu nie skonczy się dobrze. Trzeba tam zamienić, że ogon=(ogon+1)%5 lub poprostu wywalić linijki 58-65. Jak ktoś chce sprawdzić ten błąd to wystarczy wpisać do kolejki 4 liczby a puzniej je usunąć (nie warzne czy wpiszemymy 4 i usuniemy 4 czy bedziemy wpisywać i wusuwać na zmiane) teraz ogon jest na komurce 4 (naszej ostaniej) wystarczy teraz zapisać w kolejce jeszcze jena liczbe i usunąć teraz ogon jest ustawiony na komurce 5 ktora nie jest nasz. Teorytycznie ciagle czyszcąc kolejke zeby działał ten if (ile==0) w tym programi i dopisywania tam kolejnych liczb pozwala na na dojście do kolumny 10, 50, 100 i dalej, co napewno nie jest zbyt bezpieczne.

  • @mariuszpajak6740
    @mariuszpajak6740 4 ปีที่แล้ว

    15:23

  • @kastore100
    @kastore100 8 ปีที่แล้ว

    Ogólne pytanie, czemu tak samo jak w przypadku listy do opisu stosu nie użył pan biblioteki stack?
    Edit : a już widzę, nie można by było szybko pokazać zawartości stosu, stack pokazywałby tylko top, a pokazanie całości wymagałoby podwójnej operacji przeniesienia stosu

  • @pavelstanlley6473
    @pavelstanlley6473 9 ปีที่แล้ว

    Zapis dotyczący kolejki wydaje mi się niejasny. Nie rozumiem działania operacji modulo w tym kodzie : "else
    {
    cout

    • @kastore100
      @kastore100 8 ปีที่แล้ว

      +Mirosław Zelent Ten zapis może być niezrozumiały, dlatego, że w tle tak naprawdę zawartość tablicy jest inna niż pokazywana na ekranie, pierwszym elementem do wyświetlenia jest element o indeksie (głowa+1). I tutaj moje pytanie, czy nie lepiej dla zdrowia naszego rozumowania tego kontenera zrobić mechanizmu przesuwania się kolejki po każdej kolejnej operacji obcięcia głowy.
      Wtedy wyświetlanie kolejki zawsze bedzie w petli z dane[i], głowa to zawsze bedzie dane[1]

  • @alexskubala8138
    @alexskubala8138 6 ปีที่แล้ว

    Mam tą książkę, o której opowiadał Pan na początku.

  • @dominikkubacki1395
    @dominikkubacki1395 5 ปีที่แล้ว

    Witam. Mam pytanie do pana Mirosława Zelenta. Chciałbym się dowiedzieć ile odcinków z kursu języka html i kursu języka css jeszcze będzie na kanale i mniej więcej kiedy one się pojawią? Domyślam się, że gdyby weszły np. jakieś nowe znaczniki to odcinek może nagle się pojawić, ale chodzi mi o odcinki, które są już zaplanowane. Z góry dziękuję za odpowiedź. ;)

  • @inzo666
    @inzo666 8 ปีที่แล้ว

    Witam.
    Znalazlem takie male niedopracowanie w kodzie kolejki. Moze znajdzie sie ktos, kto podczas nauki wprowadzi niefortunna sekwencje danych wejsciowych i zdziwi go wypis na ekranie.W funkcji push, w bloku instrukcji warunkowej if(ile == 0) ogon inkrementuje sie w sposob ktory moze doprowadzic do zapisu danych poza tablica. chodzi mi o ogon=ogon+1. Powinno byc tak samo jak w "ifie" nizej, czyli ogon=(ogon+1)%5.

  • @TheGorn56
    @TheGorn56 7 ปีที่แล้ว +42

    30:13 lepiej 48 razy w prawo niż 2 razy w lewo xd

    • @PabloDH
      @PabloDH 6 ปีที่แล้ว

      xDDDDDDDDDDDD

    • @luksio8811
      @luksio8811 6 ปีที่แล้ว +4

      dwa razy w lewo to nie lewak a po trzech się zeruje

  • @Danon99
    @Danon99 6 ปีที่แล้ว +1

    Czy blockchain to też struktura danych?

  • @arkes9874
    @arkes9874 9 ปีที่แล้ว

    Świetny odcinek, piszę w C# i tam te struktury są od razu zaimplementowane, używałem ich bez tych informacji aczkolwiek ten kurs przybliżył mi je jeszcze bardziej.
    Mam pytanie, czy nie uważa Pan, że dziedziczenie klas wprowadza w kodzie pewny nieład ?

    • @65XEpl
      @65XEpl 9 ปีที่แล้ว

      Zależy. Jeśli potrzebujesz w nowej klasie nazwijmy ją B użyć takiej samej metody, jaka jest w klasie A, to wówczas dziedziczenie jest słabym pomysłem. Użyj agregacji / kompozycji. Jeśli jednak chcesz rozszerzyć istniejącą już metodę wówczas masz pole do popisu dla polimorfizmu, a co za tym idzie dziedziczenia.

  • @kevinbarakuda7920
    @kevinbarakuda7920 6 หลายเดือนก่อน

    OK mój błąd prześledziłem plik txt Pana Mirosława i okazało się że w miejscu while (znalazlem_miejsce==false) zamiast == wstawiłem = dlatego nie działało :) a pisałem to ręcznie z filmu

  • @michaljasinski7038
    @michaljasinski7038 10 ปีที่แล้ว

    Jest Pan w stanie określić kiedy będzie Pan startował z technologiami webowymi?

  • @jerzytuszynski860
    @jerzytuszynski860 10 ปีที่แล้ว

    Witam Panie Mirosławie.
    Jako, że jest Pan w tej branży, mam takie pytanie.
    Otóż, chcę iść na matematykę stosowaną i chciałbym kupić sobie laptop, żeby starczył mi na przynajmniej trzy lata studiów, a najlepiej na pięć. Będę programować w języku VBA i możliwe, że w kilku innych. Czy polecałby Pan jakiś optymalny dla mnie laptop w cenie do 2000pln, do 2500pln oraz do 3000pln?

  • @TheMikres
    @TheMikres 2 ปีที่แล้ว

    @Pasja informatyki Jak zrobić żeby w liście był template zamiast int? Chcę, żeby ty danych w liście byl deklarowany wraz z pierwszą daną.

    • @Ev3r0x
      @Ev3r0x 2 ปีที่แล้ว +2

      template
      class List
      {
      };
      i w każdym miejscu gdzie jest int, piszesz T

  • @MarioWachu
    @MarioWachu 10 ปีที่แล้ว

    Witam, czy istnieje jakas struktura danych ktora przeznaczona jest tworzenia map, np. zakladajac taka sytuaje: sonda trafia w losowe pole planszy szachowej i zaczyna sie po nim przemieszczac wedlug jakis regul ale caly czas zapamiatuje juz zdobyte informacje ? Myslalem o grafie ale moze jest cos lepszego?

  • @snejksnejq6743
    @snejksnejq6743 10 ปีที่แล้ว

    Witam. Mam pytanie jakie jest Pana zdanie o sensie nauki języka assemblera ,z jednej strony wydaje mi się że dobrze by znać obok c++ język niskiego poziomu z drugiej wiadomo nie jest on zbyt zrozumiały. Poświęciłem kilka godzin by jakoś tam się obeznać jak to wygląda i jak dla mnie że tak powiem fajna zabawa bezpośrednio operować na rozkazach i rejestrach procesora ,ale w internecie pełno opinii że ten język to już przeszłość ,na nic mi się to nie przyda i ogólnie stracony czas. Brać się za to czy nie?

    • @D3nz13
      @D3nz13 3 ปีที่แล้ว

      Sorki za date. Wszystko zalezy od potrzeb. Jesli zamierzasz pisac jakies sterowniki, programowac roboty, uklady scalone itd to wtedy assembler jest przydatny. W pozostalych przypadkach (jesli juz musisz uzywac jezyka niskiego poziomu), to lepiej i tak uzyc C. Roznica w predkosci bedzie niewielka (zakladajac, ze kod napisany przez ciebie w assemblerze bylby zoptymalizowany, co nie jest wbrew pozorom takie latwe), ale przejrzystosc kodu to niebo a ziemia.

  • @darkcoder9383
    @darkcoder9383 8 ปีที่แล้ว +1

    A wie pan jak zrobić coś takiego?:
    int zmienna;
    cin >> zmienna;
    system ( "ping"

  • @zxcvb18
    @zxcvb18 10 ปีที่แล้ว

    Witam
    Jest jakis odpowiednik COORD pod linuksem ?

    • @zxcvb18
      @zxcvb18 10 ปีที่แล้ว

      Dziękuję trochę się namęczyłem, ale warto było. Kilka małych zmian w kodzie i działa. Dodałem bibliotekę ncurses.h usunąłem sleep oraz SetConsoleCursorPosition
      itp. i co najważniejsze zamiast tej funkcji
      void gotoxy(int x, int y)
      {
      COORD c;
      c.X=x-1;
      c.Y=y-1;
      SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),c);
      }
      zrobiłem tą
      void gotoxy(int x, int y)
      {
      printf("\033[%d;%dH", y-1, x-1);
      }