git.kernel.org je nově oficiálně také v tmavém vzhledu.
Richard Hughes na svém blogu oznámil, že počet aktualizací firmwarů pomocí služby LVFS (Linux Vendor Firmware Service) přesáhl 100 milionů. Přehled podporovaných zařízení, nejnovějších firmwarů nebo zapojených výrobců na stránkách LVFS.
Byla vydána nová stabilní verze 3.19.0, tj. první z nové řady 3.19, minimalistické linuxové distribuce zaměřené na bezpečnost Alpine Linux (Wikipedie) postavené na standardní knihovně jazyka C musl libc a BusyBoxu. Z novinek lze vypíchnou podporu Raspberry Pi 5.
Altap Salamander (Wikipedie), dvoupanelový správce souborů pro Windows, byl uvolněn jako open source pod názvem Open Salamander. Zdrojové kódy jsou k dispozici na GitHubu pod licencí GPLv2.
Společnost JetBrains představila (YouTube) svou umělou inteligenci JetBrains AI a nástroj AI Assistant v IDE.
Byla vydána nová verze 255 správce systému a služeb systemd (GitHub, NEWS). Z novinek lze vypíchnout například novou službu systemd-bsod.service.
Google představil Gemini, svůj největší a nejschopnější model umělé inteligence.
openSUSE komunita vybírá nová loga. Jedním z cílů je odlišit se od SUSE. Aktuálně probíhá hlasování o logu openSUSE a čtyř distribucí Tumbleweed, Leap, Slowroll a Kalpa.
Raspberry Pi OS, oficiální operační systém pro Raspberry Pi, byl vydán v nové verzi 2023-12-05. Přehled novinek v příspěvku na blogu a poznámkách k vydání. Nově jej lze používat také s tmavým tématem.
Dnes je to 10 let, co byla vytvořena decentralizovaná kryptoměna Dogecoin. Autoři Billy Markus a Jackson Palmer ji původně zamýšleli jako vtip. Znakem kryptoměny je pes Shiba-Inu známý z internetových memů.
"user1";"1";"7" "user2";"2";"6" "user3";"3";"5" "user4";"3";"4" "user5";"4";"3" "user6";"4";"2" "user7";"4";"1"Pokud chci 3 záznamy řazené podle 2. sloupce a potom 3. sloupce, tak to musí vrátit user1, user2, user4. Nepřišel jsem na optimální algoritmus jak dostat 3 záznamy aniž bych musel přečíst celý 1. soubor, celý 2. soubor a pak to limitovat až ve výsledku, což je ale velice datově a výpočetně náročné pro větší množství dat. Určitě už někdo podobný problém řešil. Prosím o pomoc/popis algoritmu pro toto řazení.
sloupec1+sloupec2 = soubor1, řazený vzestupně podle 2. sloupce sloupec1+sloupec3 = soubor2, řazený vzestupně podle 3. sloupce "user1";"1";"7" "user2";"2";"6" "user3";"3";"5" "user4";"3";"4" "user5";"4";"3" "user6";"4";"2" "user7";"4";"1" 1. z prvního souboru vyberu první 3 => user1, user2, user3 2. z druhého souboru vyberu první 3 => user7, user6, user5 3. spojím a zobrazím všechna data "user1";"1";"7" "user2";"2";"6" "user3";"3";"5" "user7";"4";"1" "user6";"4";"2" "user5";"4";"3" 4. omezím na první 3 => user1, user2, user3 = CHYBANeboť primárně řadím podle 2. sloupce, tak user3 a user4 jsou nerozhodně (oba = 3), pomocí druhého sloupce ale zjistím, že user4 je před user3, což se ale při tomto algoritmu neprojeví.
n
plus všechny, co mají stejný druhý sloupec jak n
-tý
což je ale velice datově a výpočetně náročné pro větší množství datProto je dobré mít ta data v dobře zpracovatelném formátu a udržovat další informace pro jejich rychlé prohledávání a propojování. A tak vznikly databáze.
1. vyberu n řádků ze zdroje 1 .. - zjistím že m z n řádků nemají jednoznačné pořadí, tak prohledám zdroj 1 znovu a vyberu z n řádky které nemají jednoznačné pořadí + řádky s tímto "indexem", ale za limitem dotazu a postoupím dalšímu zdroji 2. to samé .......
sloupec1+sloupec2 = soubor1, řazený vzestupně podle 2. sloupcetzn. ze vuci sobe nejsou serazeny vubec (teda ano 1. sloupcem) -> to musis imho projit vsechny zaznamy ...
sloupec1+sloupec3 = soubor2, řazený vzestupně podle 3. sloupce
jmeno; cislo; cislo2 ----------------------- "user1";"1";"7" "user2";"2";"6" "user3";"3";"5" "user4";"3";"4" "user5";"4";"3" "user6";"4";"2" "user7";"4";"1" order by cislo, cislo2 limit 3 = user1, user2, user4 teď ten algoritmus: - select cislo ... order by cislo limit 3 1 2 3 - select jmeno ... where cislo in (1,2,3) => user1, user2, user3, user4 - pak zjistim ze sporne cislo je u user3 a user4 - select jmeno ... where jmeno in ("user3", "user4") order by cislo2 limit3 => user4, user3 => prerovnam puvodni vyber "user1, user2, user3, user4" na "user1, user2, user4, user3" a omezim na 3 => "user1, user2, user4"Zásadní vada na kráse je ale ta že tento algoritmus je docela složitý.
Většinou se bude jednat o různé typy relačních databází.Tak pri dotaze z kazdej databazy treba prvych n riadkov utriedenych podla vyslednych ziadanych stlpcov. A nasledne utriedit vsetky takto ziskane riadky (pri 3 databazach teda 3*n riadkov). To je algoritmus uvedeny uz v otazke (a takisto posledny sposob uvedeny v 1. komentari). Ale to utriedenie musi byt vsade rovnake ako vysledne ziadane.
Tiskni
Sdílej: