Jak ja nienawidzę tego uczucia, kiedy po wytłumaczeniu Mirosława wszystko pięknie rozumiem, a potem przychodzi pora na pisanie kodu i mózg nie ogarnia. Tak jak w odcinku ze SPOJ'em. Wszystko spoko niby rozumiem (pełne zadowolenie), odpalam pierwsze lepsze zadanie z łatwych i.. koniec. To weryfikuje zdolność abstrakcyjnego myślenia i wiedzę matematyczną (u mnie oczywiście braki). Jeszcze długa droga przede mną. Albo wybranie innej ;)
Mam dosłownie to samo. Zastanawiam się w takich momentach, czy nie wrócić do poprzednich tematów, czy odcinków i przyswajać wiedze tak długo, aż nie zapamiętam i nie zrozumiem danego pojęcia/tematu/zagadnienia. Choć mam pewne wątpliwości ku temu, bo boje się, że brak poznawania nowych rzeczy zabije we mnie, stopniowo, powoli, chęć dalszej nauki.
Rada: Rozpoczynając przygodę ze Spojem, skorzystajcie z sortowania zadań łatwych. Nie sortujcie ich jednak przez ten wskaźnik "zaakceptowano" (który zdaje się oznacza ile (procentowo) zaakceptowani nadsyłanych rozwiązań), lecz przez wskaźnik "osób" ( który oznacza, jak sądzę, ilość osób, które nad danym zadaniem pracowały). Pierwsze 3 zadania z wskaźnika "zaakceptowano" są naprawdę trudne, jak posortujecie przez "osób" to 21 zadań od góry można wykonać przy pewnym wysiłku, ale bez większych problemów :) Powodzenia!
Spoj jest słaby, umiem programować już obiektowo w C++ a nie zalicza mi najłatwiejszych zadań bo coś zawsze nie pasuje. Zaznaczam, że program zwraca poprawną wartość i jest ściśnięty jak tylko się da.
Bardzo dobre kursy. Dotychczasowo znałem PHP i doszedłem do wniosku, że jest to bardzo podobne. W zasadzie to jest to samo. Po obejrzeniu 14 odcinków tego kursu stwierdzam: O wszystkim tym wiedziałem, ale nie wiedziałem jak to wszystko się nazywa i jak to wszystko działa. A tego właśnie najbardziej mi brakowało we wszystkich innych kursach, w których słyszało się tylko "wpisujemy tutaj taką komendę" i nic więcej. Co mi z tego że znam polecenie czy wiem jaki będzie tego efekt. I właśnie dlatego moim zdaniem ten kurs jest jednym z najlepszych, a w zasadzie najlepszym który znam.
Świetny kurs! Pomimo tego, że nie jestem bezpośrednio zainteresowany nauką cpp i uczę się innych rzeczy, każdy odcinek dosłownie "wbija" dużą dawkę wiedzy do głowy. Jednym zdaniem: kurs uczy programować, a c++ jest tutaj tylko narzędziem. Już nie mówiąc o budowie komputera i oprogramowania, matematyce i sztuce motywacji samego siebie etc etc. Jedna z najlepszych serii jakie widziałem na yt. Oby tak dalej! Dzię-ku-je-my! :)
pisze 14 latek, który nie zaczął od c++ a od php (w którym radzi sobie świetnie, frameworki, api etcetc). uwielbiam Twój kurs, takie rzeczy jak wskaźniki były dla mnie obce, ale je wytłumaczyłeś, akurat rekurencję znam z pehapa i nie miałem z nią problemów. w tym odcinku te sortowania na prawdę wzbogaciły moją wiedzę, a to, że wspomniałeś o Big-O mnie kompletnie zszokowało, dziękuję!
Super wytlumaczone Mirek. Studiuje za granica i to co mowil na wykladzie o big O to byla kompletna magia. Ciebe zrozumialem po pierwszym wysluchaniu.Pozdrawiam
+Adrian Biedrzycki Podpisuję się pod Twoimi słowami wszystkimi kończynami. Ten kurs, nie dość że darmowy, to w sumie jedyny, który na mnie zadziałał (zachęcił do podjęcia wyzwania). Dziękuję Panie Mirku za pańską pracę i wkład w edukację innych :-)
Pamiętam tą satysfakcję kiedy kiedyś zastanawiałem się przez 2 dni jak działa algorytm generowania losowych labiryntów, i kiedy już wpadłem na pomysł przez kolejne 2 dni implementowanie go do mojej gry i nagle ni stąd ni zowąd po kilkudziesięciu godzinach harówy zadziałał poprawnie ;DDD
Sortowanie dla 400000 losowych elementów: Bubble sort: 757,115s Quick sort: 0,022s W tym przypadku quick sort okazał się ponad 34414 razy szybszy. Niesamowite ^^
W kursie Jaśniewskiego jest to dobrze wytłumaczone. Sam zapisany rand losuje liczby jedynie do ok. 33 tysięcy więc zapisanie rand()%100000 + 1 nie ma sensu.
Puff....Wreszcie zrozumiałem, ale zajęło mi to aż dwa dni.Wszystko było całkowicie zrozumiałe, aż do 8:43 minuty, gdy kompletnie się załamałem. Studiowałem ten algorytm chyba przez 0,5 godziny (nie wliczając czasu na powtórzenie sobie 10, 11, 5 i 13 odcinka).Na szczęście dzięki nabytej wiedzy drugi algorytm zrozumiałem jakoś dziwnie łatwo i w przyszłości raczej go będę używał częściej.Dziękuje za ten, jak i wszystkie odcinki z tej serii oraz przyznaję, że był on wyjątkowo wartościowy pod względem nabytej wiedzy.Teraz niestrudzenie czekam na nowy odcinek Obiektowego c++ i bardzo chciałbym zacząć wreszcie pisać aplikacje okienkowe :D !
Jak zobaczyłem Max Payna poczułem się jak Neo z Matrixa w Reaktywacji podczas rozmowy z Architektem , Pan jest tym Architektem oglądam od pierwszego odcinka Pańską interpretację C++ . W Max Payna grałem pierwszy raz mając 12 lat dziś oglądam jako 28 letni facet.
Na Windows XP 512 MB RAM 1,41 GHz Liczb losowych w tablicy: 100000 Sortowanie bąbelkowe: 245,219 s Sortowanie quicksort: 0,031 s Różnica wychodzi poza skalę XD
Uwaga, zadanie domowe! Jeżeli chcecie aby QuickSort, sortowało malejąco, to wystarczy zamienić te dwa znaki mniejszości: while(tablica[i]>v) i++; while(tablica[j]lewy) NOWA_NAZWA(tablica,lewy, j); if(i
40:54 - gdy w logarytmie w podstawie nie ma żadnej cyfry to jest to logarytm dziesiętny (inaczej także oznaczany lg), natomiast logarytm naturalny ma w podstawie ma liczbę Eulera i oznaczamy go jako ln, myślę że to jest tylko chwila nieuwagi :) Odcinek bardzo ciekawy pomimo tak długiego czasu trwania :)
8:54 Czy czasem w wewnętrznej pętli nie powinno być for(int j=n-1;j>=i;j--) zamiast for(int (int j=n-1;j>=1;j--) sortowanie robi niepotrzebne przebiegi ?
super dzięki, dodałem usprawnienie aby móc widzieć tablice przed i po sortowaniu przy małych liczbach i wyłączyłem wyświetlanie powyżej 12 liczb: #include #include #include using namespace std; int ile; clock_t start,stop; double czas; void sortowanie_babelkowe(int *tab, int n) { for(int i=1; i=1; j--) { if(tab[j]
Miroslawie. Drobna poprawka radix jest szybszy (przynajmniej teoretycznie) od quicksorta. Zlozonosc jest liniowa O(n). Problem z nim jest taki, ze czasy stale zwiazane z kopiowaniem sa stosunkowo duze
Co do 42:44 Jest sortowanie, które sortuje w czasie liniowym (ale tylko liczby całkowite) :D www.algorytm.org/algorytmy-sortowania/sortowanie-przez-zliczanie-countingsort.html
Chciałbym zapytać o sortowanie bąbelkowe. przy każdej iteracji i każemy sprawdzać wszystkie bąbelki (nawet te co "wypłynęły już na powierzchnię") przez warunek j>=1. Jeżeli zmienimy ten warunek na j>=i to zaoszczędzamy przy większych danych ponad 20% czasu. Z tym zmienionym warunkiem to już nie jest sortowanie bąbelkowe? Możemy zmienić ten warunek?
Mergesort jest najszybszą metodą, którą można łatwo zaimplementować, kod jest przynajmniej bardziej zrozumiały niż w przypadku Quicksorta, ma prawie taką samą złożoność czasową co Quicksort, ale ma 1 wadę, nie wiadomo czemu przy bardzo dużych tablicach, zaczyna się wieszać
Witam, mam pytanie czy kojarzy ktoś algorytm sortowania na wielu listach? Google nie na ten temat nie wie, a mi to bardzo potrzebne do projektu z programowania. Pozdrawiam, a kanał najlepszy na UA-cam z programowaniem ! ;)
Bardzo fajny odcinek. Nie podoba mi się jednak, nowe logo jak i szata graficzna bloga. Wcześniej to wszystko lepiej wyglądało. Dobrze, że jest Twitter :D
sort() to quicksort na sterydach. Ma ona taka sama zlozonosc jak quicksort, lecz pozbyto sie przypadku pesymistycznego. sort() uzywa algorytmu introspektywnego czyli jest to hybryda. Taka hybryda w funkcji sort() sklada sie z quicksorta oraz heapsorta.
(Mój przykład, ten sam komputer) Wiedzmin 2, na naprawdę dobrym sprzęcie: (nwm jak to nazwać) ekran się buguje po 5min zielono wszędzie, KWADRATOWE RYBKI! Wiedzmin 3: 30~ klatek, ustawienia ULTRA dziala zaebiscie (ten sam silnik)
jak się programuje to trzeba myśleć, więc ten drugi pomysł na algorytm sortujący jest fajny, ale tak sobie kiedyś myślałem że tego algorytmu nawet nie trzeba tworzyć, bo wystarczy stworzyć listę (wiem, że to dopiero za dwa odc), wrzucić elementy z tablicy do listy i użyć funkcji sort().
Czy w 27:45, liczbą większą od osi jest 38 zamiast 76 po uprzedniej zamianie z q ? PS. Uczę się od dłuższego czasu na kanale Pana Mirosława i odczuwam większą znajomość logiki programowania, bardzo przyjemnie się ogląda i z każdy odcinkiem czuję satysfakcję. Dziękuję :)
zaraz ci prostą rozpiską udowodnię że nie na starcie niech moje x=2 a y =4; x=2-4 teraz mamy x=-2 y=4y=4+(-2)mamy x=-2 y=-6 x=-6-(-2)otrzymujemy x=-4 y=-6 cały dowcip polega na tym że oryginalnymi wartościami które miałem zamienić były 2 i 4 efekt działania ? w wyniku dodawania oryginalne x i y ginie to niewłaściwa zasada algorytmu buble sort masz te liczby zamienić nie dodawać czy odejmować
kolega coś chyba nie dokończył toku swojego rozumowania, tam powinno być: x = x - y; y = y + x; x = y - x; no i już nie potrzebujemy dodatkowej zmiennej ;)
Szkoda, że Pan tylko wkleił te kody, a nie podał ich dokładniejszej analizy. Niestety będę musiał albo dojść do tego samemu, albo... po prostu też je wklejać i modyfikować, chociaż nie będę tym usatysfakcjonowany. Mimo tego, seria poradników i odcinek - MAJSTERSZTYK. Pierwszy raz tak wsiąknąłem w jakieś tutoriale.
Rozumiem, że z tego ocinka warto wiedzieć jak działa który algorytm, ale nie trzeba mieć "w pamięci" tego jak się je dokładnie pisze? Btw. świetny odcinek!
Apropo 9:30, da się zrobić to bez bufora tu jest przykład dla kogoś na żywo jak chce się pobawić i zobaczyć =) Od razu promuje golang fajny język ;) play.golang.org/p/Yt79Mkv2mS
Dzień dobry! Ja dopiero zaczynam programować. I przeszukując internet mogę panu powiedzieć, że świetnie Pan tłumaczy. Jednak jeżeli Pan to czyta to mam pytanie: Jak ułożyć algorytm sortowania bąbelkowego i szybkiego w programie Scratch? Z góry dziękuję.
Przyznam, 33:00 różnica jest wręcz niewyobrażalnie wielka, lecz jestem także ciekaw, czy da się osiągnąć lepsze wyniki ;p (pomijając sprzęt i oprogramowanie oczywiście). 37:55 Czekać pół godziny na posortowanie, cóż za poświęcenie :D
w sortowaniu babelkowym powtarzamy petle tyle ile jest liczb czy o jeden mniej ? z kodu wynika ze o jeden mniej. a w 6:05 filmu jest informacja ze tyle razy ile jest liczb w tablicy.
Jak ja nienawidzę tego uczucia, kiedy po wytłumaczeniu Mirosława wszystko pięknie rozumiem, a potem przychodzi pora na pisanie kodu i mózg nie ogarnia. Tak jak w odcinku ze SPOJ'em. Wszystko spoko niby rozumiem (pełne zadowolenie), odpalam pierwsze lepsze zadanie z łatwych i.. koniec. To weryfikuje zdolność abstrakcyjnego myślenia i wiedzę matematyczną (u mnie oczywiście braki). Jeszcze długa droga przede mną. Albo wybranie innej ;)
U mnie jest taka sama sytuacja :/
To jest właśnie matematyka. Mając gotowy wzór wszystko rozumiemy, jednak ciężko jest nam dojść do niego samemu.
Mam dosłownie to samo. Zastanawiam się w takich momentach, czy nie wrócić do poprzednich tematów, czy odcinków i przyswajać wiedze tak długo, aż nie zapamiętam i nie zrozumiem danego pojęcia/tematu/zagadnienia. Choć mam pewne wątpliwości ku temu, bo boje się, że brak poznawania nowych rzeczy zabije we mnie, stopniowo, powoli, chęć dalszej nauki.
Rada: Rozpoczynając przygodę ze Spojem, skorzystajcie z sortowania zadań łatwych. Nie sortujcie ich jednak przez ten wskaźnik "zaakceptowano" (który zdaje się oznacza ile (procentowo) zaakceptowani nadsyłanych rozwiązań), lecz przez wskaźnik "osób" ( który oznacza, jak sądzę, ilość osób, które nad danym zadaniem pracowały).
Pierwsze 3 zadania z wskaźnika "zaakceptowano" są naprawdę trudne, jak posortujecie przez "osób" to 21 zadań od góry można wykonać przy pewnym wysiłku, ale bez większych problemów :) Powodzenia!
Spoj jest słaby, umiem programować już obiektowo w C++ a nie zalicza mi najłatwiejszych zadań bo coś zawsze nie pasuje. Zaznaczam, że program zwraca poprawną wartość i jest ściśnięty jak tylko się da.
Panie Mirosławie, zabieranie przez Pana naszego wolnego czasu to czysta przyjemność :)
Odcinek super, ale brakowało mi szczegółowego objaśnienia kodu funkcji sortowania quicksort, gdyż sprawiło mi to niemały problem :)
ja to samo :C
To samo
Dla potomnych: quicksort zaczyna się w 21 minucie
Niestety po 7 latach twój komentarz nie jest użyteczny bo YT wprowadził oznaczanie fragmentów filmu :(
@@OPbaiterOP ale przez 7 lat był bardzo użyteczny
geniusz... potrafi utrzymać uwagę przez 45min, mówi jasno, zaciekawia... geniusz
i jeszcze raz GENIUSZ :)
Podobno nauczyciel NIE JEST W STANIE utrzymać CIĄGŁEJ uwagi ucznia przez więcej niż 20 minut... Tu raczej wyjątek :)
u mnie to nauczyciel nie umie mojej uwagi skupić przez 2 minuty.
po trzech latach- nadal geniusz :D
edit: a wlasciwie- po pieciu :D
@@fluffynexo już 6
po 6 latach dalej lepszy niż niejeden współczesny kurs
Cóż mogę powiedzieć, Wykład na studiach 2h przedstawiony w niespełna 45 minut. Przekaz...ehhh...bezcenny. Dziękuję.
Choć lekcja była wyczerpująca, w celu lepszego zapamiętania polecam poniższy filmik :)
Quick-sort with Hungarian (Küküllőmenti legényes) folk dance
albo po 6 latach ;)
@@ivanduke2721 już tak :D
Albo po 20. Pozdrawiam ludzi w 2035r.
@@kamilwiackiewicz5841 o 2 dni temu ;p
9 lat minęło
Bardzo dobre kursy. Dotychczasowo znałem PHP i doszedłem do wniosku, że jest to bardzo podobne. W zasadzie to jest to samo. Po obejrzeniu 14 odcinków tego kursu stwierdzam: O wszystkim tym wiedziałem, ale nie wiedziałem jak to wszystko się nazywa i jak to wszystko działa. A tego właśnie najbardziej mi brakowało we wszystkich innych kursach, w których słyszało się tylko "wpisujemy tutaj taką komendę" i nic więcej. Co mi z tego że znam polecenie czy wiem jaki będzie tego efekt. I właśnie dlatego moim zdaniem ten kurs jest jednym z najlepszych, a w zasadzie najlepszym który znam.
Świetny kurs! Pomimo tego, że nie jestem bezpośrednio zainteresowany nauką cpp i uczę się innych rzeczy, każdy odcinek dosłownie "wbija" dużą dawkę wiedzy do głowy. Jednym zdaniem: kurs uczy programować, a c++ jest tutaj tylko narzędziem.
Już nie mówiąc o budowie komputera i oprogramowania, matematyce i sztuce motywacji samego siebie etc etc.
Jedna z najlepszych serii jakie widziałem na yt. Oby tak dalej! Dzię-ku-je-my! :)
niech ten pierwszy rzuci kamieniem kto się nie wkur*** nad niedziałającym programem, który robił ogrom czasu :D
rzut kamieniem
rzut kamieniołomem
Ja będąc zaspany lekko już dopiero się zooretowałem że jest rekurencyjne. :-:
wtedy odpalasz debugger i szukasz błędów
Cały kurs C++ oraz obiektowy jest niemal tak wciągający jak Gra o Tron ! God, I need help... ! CHCEMY WIĘCEJ!!!! Pozdrowionka
I jak tam z programowaniem po 5 latach? :p
@@ttrappix6172 chyba ci nie odpisze
@@arbuzioarbuzowy--397 xd
@@ttrappix6172 sie nie dziwie magik juz po 3 latach zostal powtorzony
pisze 14 latek, który nie zaczął od c++ a od php (w którym radzi sobie świetnie, frameworki, api etcetc). uwielbiam Twój kurs, takie rzeczy jak wskaźniki były dla mnie obce, ale je wytłumaczyłeś, akurat rekurencję znam z pehapa i nie miałem z nią problemów. w tym odcinku te sortowania na prawdę wzbogaciły moją wiedzę, a to, że wspomniałeś o Big-O mnie kompletnie zszokowało, dziękuję!
Super wytlumaczone Mirek. Studiuje za granica i to co mowil na wykladzie o big O to byla kompletna magia. Ciebe zrozumialem po pierwszym wysluchaniu.Pozdrawiam
wow, samodzielna implementacja algorytmów sortowania to dla mnie jest czarna magia :)
A tak w ogóle to najlepsze kursy programowanie jedynie za lajka jest pan mistrzem
+Adrian Biedrzycki Podpisuję się pod Twoimi słowami wszystkimi kończynami. Ten kurs, nie dość że darmowy, to w sumie jedyny, który na mnie zadziałał (zachęcił do podjęcia wyzwania). Dziękuję Panie Mirku za pańską pracę i wkład w edukację innych :-)
Takich ludzi się szanuje - nie zazdroszczą wiedzy innym :)
Szanuje za włożoną pracę i dobre wykonanie.Musze się przyznać że przez pana filmy wypełniłem 3,5/4 mojego nowego 94 stronicowego zeszytu do notatek.
Pan Mirosław dał tym odcinkiem zdrowo do pieca.
Moja walka trwa.
Super materiał, wszystko zostało bardzo dobrze i w przystępny sposób wytłumaczone.
Pozdrawiam
Genialnie wytłumaczone. Teraz muszę dobrze zapamiętać samą metodę, a potem implementację w C++ i będzie ok :D
Pamiętam tą satysfakcję kiedy kiedyś zastanawiałem się przez 2 dni jak działa algorytm generowania losowych labiryntów, i kiedy już wpadłem na pomysł przez kolejne 2 dni implementowanie go do mojej gry i nagle ni stąd ni zowąd po kilkudziesięciu godzinach harówy zadziałał poprawnie ;DDD
Sortowanie dla 400000 losowych elementów:
Bubble sort: 757,115s
Quick sort: 0,022s
W tym przypadku quick sort okazał się ponad 34414 razy szybszy. Niesamowite ^^
Małe spostrzeżenie, w tak zapisanym generatorze liczb losujemy tylko z przedziału od jeden do około 33 tysięcy.
W kursie Jaśniewskiego jest to dobrze wytłumaczone. Sam zapisany rand losuje liczby jedynie do ok. 33 tysięcy więc zapisanie rand()%100000 + 1 nie ma sensu.
Więcej filmów c++ . Uwielbiam Pana przekaz i sposób, w jaki Pan tłumaczy :P
Najlepszy filmik jaki kiedykolwiek widzialem na YouTubie.
Puff....Wreszcie zrozumiałem, ale zajęło mi to aż dwa dni.Wszystko było całkowicie zrozumiałe, aż do 8:43 minuty, gdy kompletnie się załamałem. Studiowałem ten algorytm chyba przez 0,5 godziny (nie wliczając czasu na powtórzenie sobie 10, 11, 5 i 13 odcinka).Na szczęście dzięki nabytej wiedzy drugi algorytm zrozumiałem jakoś dziwnie łatwo i w przyszłości raczej go będę używał częściej.Dziękuje za ten, jak i wszystkie odcinki z tej serii oraz przyznaję, że był on wyjątkowo wartościowy pod względem nabytej wiedzy.Teraz niestrudzenie czekam na nowy odcinek Obiektowego c++ i bardzo chciałbym zacząć wreszcie pisać aplikacje okienkowe :D !
A nie lepiej uzyc biblioteki i instrukcji sort?
Tutaj chodzi o zrozumienie algorytmów sortujących. Dobrze używać gotowych rozwiązań, ale jeszcze lepiej rozumieć, jak one są zaimplementowane.
Obejrzałem cały, bardzo dobry film. Subskrybuję, pozdrawiam.
Genialne! Gratuluje, nawet taki osioł jak ja wszystko zrozumiał!
Jak zobaczyłem Max Payna poczułem się jak Neo z Matrixa w Reaktywacji podczas rozmowy z Architektem , Pan jest tym Architektem oglądam od pierwszego odcinka Pańską interpretację C++ . W Max Payna grałem pierwszy raz mając 12 lat dziś oglądam jako 28 letni facet.
Życzę Ci ,żebyś mógł na tworzeniu takich materiałów dydaktycznych zarobić fortunę i zgarnąć masę radochy.
Na Windows XP 512 MB RAM 1,41 GHz
Liczb losowych w tablicy: 100000
Sortowanie bąbelkowe: 245,219 s
Sortowanie quicksort: 0,031 s
Różnica wychodzi poza skalę XD
Mega odcinek
Świetny materiał!
Elegancko.
Dzięki wielkie!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!11
Super filmik. Dzięki wielkie za wytłumaczenie tego :)
Ten pan na czarno - białych zdjęciach i fragmentach filmów to aktor, reżyser i scenarzysta Sean Gullette, znany ze swojej roli w thrillerze "Pi".
Super odcinek i najlepsze sa te twoje wstępy
Elegancko
Uwaga, zadanie domowe!
Jeżeli chcecie aby QuickSort, sortowało malejąco, to wystarczy zamienić te dwa znaki mniejszości:
while(tablica[i]>v) i++;
while(tablica[j]lewy) NOWA_NAZWA(tablica,lewy, j);
if(i
są build logi pokazują, że zmienna nie została zadeklarowana :P
Dzieki XDDDD, mialem to samo hahaha
Tak samo zrobiłem xdd
Też tu jesteś :). Chyba każdy uczył się od mistrza Mirosława.
Świetny tutorial.. Pozdrawiam Piotrek
Dla 100000 elementow:
Babelkowo: 48,288s;
Quicksort: 0,014s;
Przez wstawienie(zaddom): 8.188s;
Sort (algorithm) wbudowane: 0.023s;
Bardzo dobrze wytłumaczone. Zacna puenta pod koniec odcinka :) Pozdrawiam
40:54 - gdy w logarytmie w podstawie nie ma żadnej cyfry to jest to logarytm dziesiętny (inaczej także oznaczany lg), natomiast logarytm naturalny ma w podstawie ma liczbę Eulera i oznaczamy go jako ln, myślę że to jest tylko chwila nieuwagi :)
Odcinek bardzo ciekawy pomimo tak długiego czasu trwania :)
Czułem się jakbym miał odpalone odtwarzanie na x1.5
Witam w 2021 roku. A odnośnie tego co powiedziałeś w 21:45 powiem, nie tylko tobie :)
No, no, dobry odcinek.
EA Sports nie wydała FIFA 24 bo Zelent zajął tą nazwę
8:54 Czy czasem w wewnętrznej pętli nie powinno być for(int j=n-1;j>=i;j--) zamiast for(int (int j=n-1;j>=1;j--) sortowanie robi niepotrzebne przebiegi ?
Dołączam się do pytania
super dzięki, dodałem usprawnienie aby móc widzieć tablice przed i po sortowaniu przy małych liczbach i wyłączyłem wyświetlanie powyżej 12 liczb:
#include
#include
#include
using namespace std;
int ile;
clock_t start,stop;
double czas;
void sortowanie_babelkowe(int *tab, int n)
{
for(int i=1; i=1; j--)
{
if(tab[j]
tak sie wszyscy zachwycają a kod z POBIERZ PLIKI Z ODCINKA:
wcale nie sortuje
Miroslawie. Drobna poprawka radix jest szybszy (przynajmniej teoretycznie) od quicksorta. Zlozonosc jest liniowa O(n). Problem z nim jest taki, ze czasy stale zwiazane z kopiowaniem sa stosunkowo duze
Tyle gadania, a nie wspomniał ani słowa o sortowaniu bogo. Najlepszy algorytm do srotowania wartości
Co do 42:44
Jest sortowanie, które sortuje w czasie liniowym (ale tylko liczby całkowite) :D
www.algorytm.org/algorytmy-sortowania/sortowanie-przez-zliczanie-countingsort.html
Chciałbym zapytać o sortowanie bąbelkowe. przy każdej iteracji i każemy sprawdzać wszystkie bąbelki (nawet te co "wypłynęły już na powierzchnię") przez warunek j>=1. Jeżeli zmienimy ten warunek na j>=i to zaoszczędzamy przy większych danych ponad 20% czasu. Z tym zmienionym warunkiem to już nie jest sortowanie bąbelkowe? Możemy zmienić ten warunek?
Czas powrócić do cpp, przy szkole i tej ilości nauki programowanie zeszło na 2 plan ale czas powrócić:))
Mergesort jest najszybszą metodą, którą można łatwo zaimplementować, kod jest przynajmniej bardziej zrozumiały niż w przypadku Quicksorta, ma prawie taką samą złożoność czasową co Quicksort, ale ma 1 wadę, nie wiadomo czemu przy bardzo dużych tablicach, zaczyna się wieszać
Czapki z głów Panie Mirosławie!
17 lekcji na yt z Mirosławem i umiem więcej, niż na lekcjach w szkole w dodatku jest to przyjemniejsze.
Witam, mam pytanie czy kojarzy ktoś algorytm sortowania na wielu listach? Google nie na ten temat nie wie, a mi to bardzo potrzebne do projektu z programowania.
Pozdrawiam, a kanał najlepszy na UA-cam z programowaniem ! ;)
Przy sortowaniu bombelkowym 100.000 liczb wyszło: 67 sekund.
Przy quicksort dla 100.000.000 liczb wyszło 25 sekund XD
Jest różnica :D
Ej ogólnie polecam zrobić to dekrementując za każdym razem x, nie sprawdza wtedy dobrze ułożonych danych w tablicy
10 lat później znowu oglądam ten filmik, bo nie pamiętam połowy tych algo -.-
34:27 Zlozonosc Algorytmow ;)
nom z fifią to pan się pomylił hehe
Przy bubble sorcie z każdym kolejlnym losowaniem pominalbym te liczby, które już są na górze
Z każdym wykonaniem jedna więcej
Mógłbyś nagrać filmik o wątkach w C++ ? Dokładniej jak odbywa się wysyłanie i odbieranie danych pomiędzy wątkami?
robi sie ciekawie
Ja chyba padnę na tej lekcji. Dlatego że ja muszę powoli a tu są wklejane funkcje i nie wiem gdzie. Szkoda ze na końcu nie ma calego kodu pokazanego
30:33 Można było to zrobić wewnątrz wcześniejszej pętli
Bardzo fajny odcinek. Nie podoba mi się jednak, nowe logo jak i szata graficzna bloga. Wcześniej to wszystko lepiej wyglądało. Dobrze, że jest Twitter :D
Jest jeszcze kilka innych rodzajów sortowania, ale generalnie używa sie sort() z "algorithm" działający w czasie logarytmicznym
sort() to quicksort na sterydach. Ma ona taka sama zlozonosc jak quicksort, lecz pozbyto sie przypadku pesymistycznego. sort() uzywa algorytmu introspektywnego czyli jest to hybryda. Taka hybryda w funkcji sort() sklada sie z quicksorta oraz heapsorta.
(Mój przykład, ten sam komputer) Wiedzmin 2, na naprawdę dobrym sprzęcie: (nwm jak to nazwać) ekran się buguje po 5min zielono wszędzie, KWADRATOWE RYBKI! Wiedzmin 3: 30~ klatek, ustawienia ULTRA dziala zaebiscie (ten sam silnik)
Swietne filmy :) Kontynuuj :)
Quick-sort with Hungarian (Küküllőmenti legényes) folk dance :)
XDDDDDDDDD
Żeby było zabawniej to filmik z tańcem quicksort trwa dłużej niż bubble :P
Pamiętam jak tydzień temu nudziło mi się na plastyce i robiłem bublesorta pastelami
Akurat oglądałem 13 odc. a tu następny ;)
jak się programuje to trzeba myśleć, więc ten drugi pomysł na algorytm sortujący jest fajny, ale tak sobie kiedyś myślałem że tego algorytmu nawet nie trzeba tworzyć, bo wystarczy stworzyć listę (wiem, że to dopiero za dwa odc), wrzucić elementy z tablicy do listy i użyć funkcji sort().
Czy w 27:45, liczbą większą od osi jest 38 zamiast 76 po uprzedniej zamianie z q ? PS. Uczę się od dłuższego czasu na kanale Pana Mirosława i odczuwam większą znajomość logiki programowania, bardzo przyjemnie się ogląda i z każdy odcinkiem czuję satysfakcję. Dziękuję :)
Odnośnie 9:55 . Owszem można mając dwie zmienne zamienić je miejscami bez trzeciej zmiennej. Dla niedowiarków:
x=x-y;
y=y+x;
x=y-x;
coś nie bardzo :D
zaraz ci prostą rozpiską udowodnię że nie na starcie niech moje x=2 a y =4; x=2-4 teraz mamy x=-2 y=4y=4+(-2)mamy x=-2 y=-6 x=-6-(-2)otrzymujemy x=-4 y=-6 cały dowcip polega na tym że oryginalnymi wartościami które miałem zamienić były 2 i 4 efekt działania ? w wyniku dodawania oryginalne x i y ginie to niewłaściwa zasada algorytmu buble sort masz te liczby zamienić nie dodawać czy odejmować
kolega coś chyba nie dokończył toku swojego rozumowania, tam powinno być:
x = x - y;
y = y + x;
x = y - x;
no i już nie potrzebujemy dodatkowej zmiennej ;)
swap()
Funkcja swap używa w swej implementacji zmiennej tymczasowej.
Albo coś jest skopane albo za głupi jestem ale u mnie to nie sortuje do końca dobrze. a skopiowany jest ten algorytm.
Lepiej zagospodarowane 45 minut niż jakakolwiek lekcja informatyki w szkole.
Jeszcze rok do tej fify :D
Szkoda, że Pan tylko wkleił te kody, a nie podał ich dokładniejszej analizy. Niestety będę musiał albo dojść do tego samemu, albo... po prostu też je wklejać i modyfikować, chociaż nie będę tym usatysfakcjonowany. Mimo tego, seria poradników i odcinek - MAJSTERSZTYK. Pierwszy raz tak wsiąknąłem w jakieś tutoriale.
w poprzednim odcinku było
Musiałem rozbić ten film na trzy podejścia, bo na bieżąco notuję, piszę kod itd.
27:37 A czy nie przesuwamy się w lewo :D?
Szkoda ze FIFY 24 juz nie bedzie xddd @Pasja Informatyki prawie jasnowidz xd
Nie działa mi ten program :/
nareszcie sie dowiedziałem co znaczy pivot (friends)
dwie zmienne można zamienić wartościami też tak:
int x,y;
x=x+y;
y=x-y;
x=x-y;
Mam pytanie. Gdzie pan uczy? W sensie w jakich szkołach
Rozumiem, że z tego ocinka warto wiedzieć jak działa który algorytm, ale nie trzeba mieć "w pamięci" tego jak się je dokładnie pisze?
Btw. świetny odcinek!
Apropo 9:30, da się zrobić to bez bufora tu jest przykład dla kogoś na żywo jak chce się pobawić i zobaczyć =) Od razu promuje golang fajny język ;)
play.golang.org/p/Yt79Mkv2mS
Dzień dobry! Ja dopiero zaczynam programować. I przeszukując internet mogę panu powiedzieć, że świetnie Pan tłumaczy. Jednak jeżeli Pan to czyta to mam pytanie: Jak ułożyć algorytm sortowania bąbelkowego i szybkiego w programie Scratch?
Z góry dziękuję.
Przyznam, 33:00 różnica jest wręcz niewyobrażalnie wielka, lecz jestem także ciekaw, czy da się osiągnąć lepsze wyniki ;p (pomijając sprzęt i oprogramowanie oczywiście).
37:55 Czekać pół godziny na posortowanie, cóż za poświęcenie :D
PRAWDA PRAWDASD POLAĆ MÓ
Czy to jest normalne, że na tym poziomie nie rozumiem niektórych wiadomości?
jeśli chodzi ci o strukturę quicksort'a to nie martw się, też nie za bardzo to zrozumiałem
w sortowaniu babelkowym powtarzamy petle tyle ile jest liczb czy o jeden mniej ? z kodu wynika ze o jeden mniej. a w 6:05 filmu jest informacja ze tyle razy ile jest liczb w tablicy.
W ramach ciekawostki: te dwa algorytmy zostały po krótce opisane w programie "Jak to działa? Algorytmy"
Sort zwykłe 500000 liczb między 0-10000. : 267.75s
Quicksort : 0.026s
XD