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í
×
včera 19:33 | Nová verze

Byla vydána nová major verze 2.9.0 multiplatformního svobodného frameworku pro zpracování obrazu G'MIC (GREYC's Magic for Image Computing, Wikipedie). Přehled novinek i s náhledy na PIXLS.US. Zmínit lze například generování moaré animací. Ukázka na YouTube.

Ladislav Hagara | Komentářů: 0
28.3. 17:33 | Zajímavý článek

Nová čísla časopisů od nakladatelství Raspberry Pi: MagPi 91 (pdf) a 92 (pdf), HackSpace 29 (pdf), Hello World 12 (pdf), Wireframe 33 (pdf), 34 (pdf) a 35 (pdf).

Ladislav Hagara | Komentářů: 1
28.3. 16:11 | IT novinky

Společnost FriendlyElec začala prodávat svůj nejnovější miniaturní jednodeskový počítač NanoPi R2S. Počítač v ceně 22 dolarů zaujme především dvěma Gigabit Ethernet porty.

Ladislav Hagara | Komentářů: 38
27.3. 07:00 | Zajímavý článek

David Malcolm se ve svém příspěvku na blogu vývojářů Red Hatu rozepsal o statické analýze a nové volbě -fanalyzer v GCC 10. Ukázkové příklady lze vyzkoušet také online na stránce Compiler Explorer.

Ladislav Hagara | Komentářů: 1
26.3. 20:22 | IT novinky

Český hydrometeorologický ústav doposud poskytoval data z meteorologických měření pouze za úplatu, přestože jde o veřejnou instituci. Dlouhodobě se tím zabýval Jan Cibulka, datový novinář Českého rozhlasu. Dosavadní praxe se však nyní mění – Cibulka syrová historická data získal a zveřejnil včetně vzorové žádosti dle zákona o právu na informace o životním prostředí. Podle chystaného zákona o zabezpečení hydrometeorologické služby by měla odpadnout i nutnost o data explicitně žádat.

Fluttershy, yay! | Komentářů: 67
26.3. 18:22 | IT novinky

Router Turris Omnia 2020 získal certifikaci FCC nezbytnou pro prodej na americkém trhu. S tím souvisí, že je nyní tento router k dostání také prostřednictvím internetového obchodu Amazon.com. Nová verze routeru, která je v nabídce za 334 USD, má stříbrný kovový design a je vybavena operačním systémem Turris OS 4.0. Mimo to jsou její součástí i automatické bezpečnostní aktualizace a nově také testovací verze nového systému zabezpečení Sentinel, který umožňuje ještě rychleji reagovat na síťové hrozby.

Ladislav Hagara | Komentářů: 2
26.3. 16:44 | Zajímavý software

Projekt KDE představuje nové uživatelské rozhraní Plasma Bigscreen pro využití s velkými obrazovkami pro přehrávání multimédií. Vedle technologií Plasma integruje také Mycroft k ovládání hlasem. Ke stažení je betaverze pro Raspberry Pi 4.

Fluttershy, yay! | Komentářů: 3
26.3. 15:11 | Zajímavý software

Microsoft aktualizoval dokumentaci ke svému bezpečnostnímu softwaru Microsoft Defender Advanced Threat Protection (Microsoft Defender ATP) for Linux. Aktuálně je k dispozici veřejná preview verze. Oficiálně podporovány jsou linuxové distribuce Red Hat Enterprise Linux, CentOS, Ubuntu, Debian, SUSE Linux Enterprise Server a Oracle Linux. Původně Windows Defender byl loni přejmenován na Microsoft Defender, poněvadž byl přenesen také na macOS.

Ladislav Hagara | Komentářů: 3
26.3. 07:00 | Zajímavý článek

Ars Technica rozebírá na open source cílenou FUD zprávu, kterou v reakci na začlenění ovladače pro souborový systém exFAT do jádra Linux (posvěcené Microsoftem) šíří firma Paragon Software, která nabízí mj. alternativní, komerční ovladače exFAT.

Fluttershy, yay! | Komentářů: 20
25.3. 14:55 | Upozornění

S touto zprávičkou bylo na AbcLinuxu vydáno přesně 25 000 zpráviček. První z nich vyšla 4. října 2003. Leoš Literák v ní oznámil, že AbcLinuxu nově podporuje také zprávičky.

Ladislav Hagara | Komentářů: 34
Se kterými dopady COVID-19 už jste se přímo osobně setkali?
 (3%)
 (53%)
 (38%)
 (38%)
 (36%)
 (6%)
 (20%)
Celkem 420 hlasů
 Komentářů: 43, poslední včera 20:38
Rozcestník

www.AutoDoc.Cz

Dotaz: Setřídění pole

19.1. 21:19 Dooyer
Setřídění pole
Přečteno: 507×

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

Řešení dotazu:


Odpovědi

19.1. 21:38 Vtipnéř | skóre: 36 | 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 much more better.
19.1. 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. 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. 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. 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
Fluttershy, yay! avatar 19.1. 22:17 Fluttershy, yay! | skóre: 86 | 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í.
✊ The old world is dying, and the new world struggles to be born. Now is the time of monsters. ✊
19.1. 22:32 Kit | skóre: 44 | 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.
Fluttershy, yay! avatar 19.1. 22:44 Fluttershy, yay! | skóre: 86 | 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ů.
✊ The old world is dying, and the new world struggles to be born. Now is the time of monsters. ✊
Gréta avatar 20.1. 00:58 Gréta | skóre: 19 | blog: Grétin blogísek | Stockholm
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. 22:50 Vtipnéř | skóre: 36 | 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 much more better.
19.1. 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
Gréta avatar 20.1. 00:49 Gréta | skóre: 19 | blog: Grétin blogísek | Stockholm
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. 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. 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))
Gréta avatar 22.1. 13:07 Gréta | skóre: 19 | blog: Grétin blogísek | Stockholm
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.