abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 16:00 | IT novinky

    Řemínky pro Apple Watch, bezdrátová sluchátka nebo nabíjecí adaptéry. Takovou nabídku našli v uplynulých dnech příslušníci Celního úřadu v Liberci při kontrole kamenného obchodu na Náchodsku. Celkem zde zadrželi 3 035 kusů zboží podezřelého z porušování práv duševního vlastnictví. Pokud by se jednalo o originální výrobky, jejich hodnota by podle odhadu přesáhla 10,8 milionu korun.

    Ladislav Hagara | Komentářů: 5
    dnes 14:11 | Nová verze

    Byla vydána verze 31.1 textového editoru GNU Emacs. Podrobný přehled novinek v souboru NEWS.

    Ladislav Hagara | Komentářů: 4
    dnes 12:22 | Nová verze

    Webový prohlížeč Waterfox (Wikipedie), fork Firefoxu, byl vydán ve verzi 6.7.0. Postaven je na jádru Gecko ESR 153.

    Ladislav Hagara | Komentářů: 1
    dnes 11:22 | Nová verze

    Multiplatformní open source voxelový herní engine Luanti byl vydán ve verzi 5.17.0. Podrobný přehled novinek v changelogu. Přidána byla základní podpora gamepadů. Opraveno bylo několik zranitelností. Původně se jedná o Minecraftem inspirovaný Minetest v říjnu loňského roku přejmenovaný na Luanti.

    Ladislav Hagara | Komentářů: 1
    dnes 11:00 | IT novinky

    Americká technologická společnost Apple loni v Irsku na daních zaplatila 17 miliard dolarů (zhruba 350 miliard Kč). To představovalo 40 procent celkové částky, kterou firma odvedla na dani z příjmů po celém světě. Vyplývá to z účetních výkazů podniku. Platbu výrazně zvýšilo rozhodnutí Soudního dvora EU z roku 2024, podle něhož měl Apple doplatit Irsku na daních 13 miliard eur (313 miliard Kč).

    Ladislav Hagara | Komentářů: 1
    dnes 09:55 | Zajímavý projekt

    CrossPoint Reader je open-source alternativní firmware pro menší, levné čtečky, vybavené cca čtyřpalcovým e-ink displejem. Zahrnuje aplikaci pro čtení e-knih a webový server pro konfiguraci a přenos souborů po síti. Verze 1.0 byla vydána v únoru 2026. Recenze současné verze 1.5 vyšla na Linux Weekly News.

    |🇵🇸 | Komentářů: 0
    21.8. 05:00 | Nová verze

    Byla vydána verze 1.98.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    21.8. 04:22 | Nová verze

    Byla vydána nová verze 7.1 (YouTube) svobodného open source redakčního systému WordPress. Kódové jméno Mary Lou bylo vybráno na počest americké jazzové klavíristky Mary Lou Williams (YouTube).

    Ladislav Hagara | Komentářů: 0
    20.8. 19:11 | Nová verze

    Bun (Wikipedie), tj. běhové prostředí (runtime) a toolkit pro JavaScript a TypeScript, alternativa k Node.js a Deno, byl vydán ve verzi 1.4. Představení novinek také na YouTube. Bun byl přepsán z programovacího jazyka Zig do Rustu. Pomocí Claude Fable 5.

    Ladislav Hagara | Komentářů: 0
    20.8. 12:33 | Nová verze

    Vývojáři KDE na Mastodonu oznámili vydání balíku aplikací KDE Gear 26.08. Přehled novinek i s náhledy a videi v oficiálním oznámení.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (10%)
     (7%)
     (2%)
     (19%)
     (29%)
     (7%)
     (6%)
     (2%)
     (15%)
     (22%)
    Celkem 2491 hlasů
     Komentářů: 31, poslední 13.8. 00:27
    Rozcestník

    Dotaz: Setřídění pole

    19.1.2020 21:19 Dooyer
    Setřídění pole
    Přečteno: 639×

    vysvětlí mi někdo jak to celé funguje? trošku se v tom ztrácím

    Řešení dotazu:


    Odpovědi

    19.1.2020 21:38 Vtipnéř | skóre: 39 | blog: Vtipnéřův blog | Brno
    Rozbalit Rozbalit vše Re: Setřídění pole
    Chtělo by to upřesnit, v čem se ztrácíš. Není Ti jasné, o co jde, nebo nechápeš některý konkrétní algoritmus?

    Jirka
    Opening Windows is better than washing them. Clearing Windows (e.g. erasing or deleting) is even much better.
    19.1.2020 22:06 Dooyer
    Rozbalit Rozbalit vše Re: Setřídění pole
    celkově ten algoritmus si nedokážu představit, zkoušel sem si to graficky představit a nějak sem to nepobral a ty operace pod tím if ty taky nechápu
    19.1.2020 22:07 Dooyer
    Rozbalit Rozbalit vše Re: Setřídění pole
    jakože chtěl bych vysvětlit postupně co tenhle seřazovací algoritmus dělá od prvního for až po ten if
    19.1.2020 22:19 HAgriT
    Rozbalit Rozbalit vše Re: Setřídění pole
    Tak si nech pole po každé iteraci vypsat nebo nažhav debugger.
    19.1.2020 22:43 Radovan
    Rozbalit Rozbalit vše Re: Setřídění pole
    Funguje to úplně debilně, tím snad nejhorším možným způsobem, protože v tom nejideálnějším případě počítač dělá zbytečnou práci jenom polovinu času. V reálu mnohem víc...

    Proměnná i: pokud máš pole velké 100 prvků, projde se 99krát.

    Proměnná j: prochází se prvky od nejspodnějšího až pod vrchní, tedy s indexy 0 až 98, a každý se porovná s tím přímo nad ním.

    If: Pokud je nižší prvek větší než ten vyšší, prohodí se mezi sebou.

    A znovu a znovu se procházejí i ty už dávno seřazené, pořád dokola.

    To je všechno, tady to máš ve videu: https://www.youtube.com/watch?v=JffeC8lGb6I
    |🇵🇸 avatar 19.1.2020 22:17 |🇵🇸 | skóre: 94 | blog:
    Rozbalit Rozbalit vše Re: Setřídění pole
    Odkaz na snímek obrazovky s kódem, uložený na externím webu pro sdílení obrázků. Stallmanova noho… 🤦

    Každopádně, ten algoritmus je neefektivní varianta bublinkového třídění (bubble sort). Vizualizací si nepochybně dokážeš najít bezpočet, včetně tanečního ztvárnění.
    🇵🇸Touch grass🇺🇦 ✊ ani boha, ani pána
    19.1.2020 22:32 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: Setřídění pole
    Pro pole se třemi prvky je bubblesort nejefektivnějším algoritmem.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    |🇵🇸 avatar 19.1.2020 22:44 |🇵🇸 | skóre: 94 | blog:
    Rozbalit Rozbalit vše Re: Setřídění pole
    Non sequitur.

    Všimni si, že odkazovaná implementace vždycky provede iterací – nekontroluje, zda skutečně došlo k nějakým prohozením prvků.
    🇵🇸Touch grass🇺🇦 ✊ ani boha, ani pána
    MakeIranBombedAgain❗ avatar 20.1.2020 00:58 MakeIranBombedAgain❗ | skóre: 42 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Setřídění pole

    sem si mu tady minule stěžovala že má zdrojáček blbě formátovanej tak to asi dooyer vyřešil posvým :D ;D

    prosimtě dooyere tady si mužeš přepnout takovej ten editor komentů do html a zdrojáček tam napišeš takhle mezi tyhlety dva pre

    <pre class="brush: c">
    zdrojáček
    </pre>
    

    já to taky hnedka nemohla najít i když je to napsaný hnedka pod tim okýnkem kam se piše text :O :O :D :D

    19.1.2020 22:50 Vtipnéř | skóre: 39 | blog: Vtipnéřův blog | Brno
    Rozbalit Rozbalit vše Re: Setřídění pole
    Sorry, napoprvé jsem přehlédl ten odkaz na obrázek s algoritmem.

    Jak už bylo uvedeno, jedná se o tzv. buble sort. Postupně se porovnávají prvky vedle sebe a když jsou ve špatném pořadí, tak se prohodí. Tak se při prvním průchodu dostane největší prvek na konec pole - probublá nahoru, odtud název. Při druhém průchodu se druhý největší prvek dostane na předposlední místo v poli a tak to jde dál.

    Algoritmus je uveden neefektivně, jelikož při druhém průchodu se nemusí jít až na konec pole, stačí skončit o jeden prvek dřív, při druhém průchodu o dva prvky dřív atd.

    Navíc údaj v poznámce za hlavičkou funkce je matoucí, pole je tam označeno jen "u" místo "uk" a vypadá to, že by mělo mít jen 10 prvků.

    Jirka
    Opening Windows is better than washing them. Clearing Windows (e.g. erasing or deleting) is even much better.
    19.1.2020 23:53 Dooyer
    Rozbalit Rozbalit vše Re: Setřídění pole
    a pro to zefektivnění to jen před cyklus for (s porovnáváním sousedů) dám např for (l=1; l<9;l++) tímpádem ten v tom cyklu for(s porovnvanim sousedu) bude změněno pocet-l.. a potom se ten pocet porovnávacích sousedů bude snizovat a bude to efektivnejsi ne? nebudou se porovnavat serazene cisla
    MakeIranBombedAgain❗ avatar 20.1.2020 00:49 MakeIranBombedAgain❗ | skóre: 42 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Setřídění pole

    jestli ti jako rozumim tak jo ;D

    takhle nějak by to mělo vypadat si myslim ale za výsledek neručim protože už sem skoro spací

     

    ...
    for(i=0;i<pocet;i++)
    {
        //nejvíc největší prvek políčka dofrčí vždycky uplně nakonec pole
        //určitě už ho jako nebudem postrkovat jinam protože větší tam neni
        //no a protože už nebudeme šahat nakonec mužeme snížit o počet průběhů 'i' páč tolik jsme už
        //umístili nejvíc největších prvků jakoby za každej ten průběh ;D
        //jo o jedničku zmenšujem protože tam máme j+1 a udělalo by to out of range vyjímku
    
        for(j=0;j<pocet-i-1;j++)
        {
        
            if(uk[j]>uk[j+1])
            {
                
                //prohodíme [j] s [j+1]
                pom=uk[j];
                uk[j]=uk[j+1];
                uk[j+1]=pom;
            
            }
        
        }
    
    }
    ...
    
    20.1.2020 13:29 Ovrscout
    Rozbalit Rozbalit vše Re: Setřídění pole
    Celkem pěkně je (nejen) buble sort vizualizován a posán zde: https://www.algoritmy.net/article/3/Bubble-sort
    22.1.2020 12:50 Dooyer
    Rozbalit Rozbalit vše Re: Setřídění pole
    a ještě mě zajímá uk[j+1]=pom .. proč tam musí být tenhle řádek a proč by to nejelo bez něj?
    Řešení 1× (Dooyer (tazatel))
    MakeIranBombedAgain❗ avatar 22.1.2020 13:07 MakeIranBombedAgain❗ | skóre: 42 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Setřídění pole

    myslíš v tom prohazování??

    pom=uk[j];
    uk[j]=uk[j+1];
    uk[j+1]=pom;
    

    nóóóó tyhlety tři řádky sloužej k prohození dvou prvků pole. na prvním řádku si do dočasný pomocný proměný schováme hodnotu prvku na pozici j. děláme to proto že na druhým řádku tu pozici j přepišeme hodnotou prvku j+1 a původní obsah na pozici j by byl uplně ztracenej :O :O ;D

    no a na posledním řádku teda tu původní hodnotu prvku j schovanou teďko už jenom v tý pomocný proměný zapišeme na pozici j+1. takže co bylo nazačátku na pozici j je teďko na j+1 no a co bylo nazačátku na j+1 je na j ;D

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.