-
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
atman.pl!.POSTED!not-for-mail
From: bartekltg <b...@g...com>
Newsgroups: pl.comp.programming
Subject: Re: sortowanie
Date: Sun, 14 Oct 2012 02:29:16 +0200
Organization: ATMAN - ATM S.A.
Lines: 133
Message-ID: <k5d113$ga1$1@node1.news.atman.pl>
References: <k59gbj$be7$1@node2.news.atman.pl>
<6...@g...com>
<k59jgh$mb7$1@mx1.internetia.pl> <k59jvr$360$1@node1.news.atman.pl>
<k59q5n$np3$1@mx1.internetia.pl> <k5bc6k$4ea$1@mx1.internetia.pl>
<k5bkvg$jtk$1@mx1.internetia.pl> <k5bnr3$n79$1@mx1.internetia.pl>
<k5bpdr$755$1@node1.news.atman.pl> <k5bqo8$n79$4@mx1.internetia.pl>
<k5bqv6$8oq$1@node1.news.atman.pl> <k5bsuf$n79$5@mx1.internetia.pl>
<k5bsva$aoq$1@node1.news.atman.pl> <k5bvic$n79$6@mx1.internetia.pl>
<k5cqnf$gac$1@node2.news.atman.pl> <k5cvd5$d0e$3@mx1.internetia.pl>
NNTP-Posting-Host: 144-mi3-6.acn.waw.pl
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: node1.news.atman.pl 1350174563 16705 85.222.69.144 (14 Oct 2012 00:29:23
GMT)
X-Complaints-To: u...@a...pl
NNTP-Posting-Date: Sun, 14 Oct 2012 00:29:23 +0000 (UTC)
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20120907
Thunderbird/15.0.1
In-Reply-To: <k5cvd5$d0e$3@mx1.internetia.pl>
Xref: news-archive.icm.edu.pl pl.comp.programming:199862
[ ukryj nagłówki ]W dniu 2012-10-14 02:01, Edek Pienkowski pisze:
>> Zawsze myslalem o tym, jako o nauce projektowania algorytmów.
>> Ale nie mikroptymalizacji, tylko takim bardziej ogolnym.
>
> Po pierwsze, kompilatory robią masę "mikrooptymalizacji".
> Implementuje się je raz.
Ale pisanie kompilatora to zdecydowanie nie jest to, czym
się student pierwszego roku powinien zajmować:)
> No i to są algorytmy, niektóre dość proste, więc to jest
> wstęp do algorytmiki, jeden z możliwych. Uczy wszystkich
> podstawowych elementów dorzucając model procesora, którego
> trzeba użyć. RAMu i cache może nie mieć, ze dwa rejestry
> i proste fikcyjne ALU, pełny minimalizm.
To tu się po prostu nie zgadzamy. Zwykłym potrzeba
znaczniej bardziej tego sortowania niż babrania się
w asm. Zwłaszcza na początku.
Znam paru dobrych informatyków siedzących 'w przemyśle',
znam paru, ktorzy poszli w teorię. Na takim przedmiocie
JAJO, gdzie to właśnie mieli bawic się asm i bebechami
systemu poradzili sobie. Ale assembler jest im w codziennej
pracy niepotrzebny. Wiedza wyniesiona z analizy sortowania
- tak.
> A moim zdaniem musi go spróbować zaimplementować sam wcześniej.
> Albo coś podobnego. Ucz małpę niezmienników ;)
A co to za rożnica? Nie wymyślisz sam większośći algorytmów.
Często trzeba podsunać pomysł.
BTW, ja też przed studiami 'programowałem'. Bawilem sie pascalem,
C, C++. 16 bitoiwym assemblerem. Nawet na olimpiade
informatyczną się w liceum przejechałem.
A na studiach przeszedłem się po sąsiedzku na parę semestrów
różnych 'metod programowania' czy ASD i zrozumiałem,
jaką kaszanę odwalałem;)
>> Myślę, że tu nie chodzi o sorta, tylko o nauczenie pewnego
>> zestawu narzędi i sposobu myślenia _przydatnego_ przy
>> projektowaniu algorytmów.
>> Podstawy analizy zlozonośći, myślenie o niezmiennikach,
>> ale też zwracanie uwagi na sytuacje krańcowe
>> ("Z pętlą jest jak z lotem samolotem. Najtrudniejszy jest
>> start i lądowanie. Sam lot jest stosunkowo prosty"//Diks;))
>
> No, nawet myśle podobnie, ale wciąż nie kumam o co chodzi
> z tym sortem.
N qsorcie łumaczysz rekurencję. 'dziel i zwyciezaj".
Na takim insertionsorcie niezmienniki, pętle.
Porównując oba masz ilustrację złożonośći obliczeniowej.
Są to proste obrazki, przykłady do pojęć.
Można to zastąpić innymi, bardizej wymyslnymi algorytmami,
ale nijak nie da się tego zastąpić rzeźbieniem w asm
i peepholami. To po prostu inne zagadnienia.
Jedne cwiczenia na sortowanie można poswiecic.
>
> Mi nie chodzi o to "czy uczyć całki", ale "jak uczyć całki". To samo
> w kwestii algorytmów, czy bądźmy szczerzy: programowania.
A ja mam wrażenie, że pod jak uczyć całek mówisz
'uczmy się algebry'. Algebry tez się trzeba nauczyć,
ale na przedmiocie w sali obok. Teraz robimy całki.
Rozumiesz mnie?
> Przyszywanym bardziej niż ja nie jesteś. Ale jakoś dajesz radę?
A dziękuję, żyję. Ale bywało lepiej;]
> Dajesz mi argumenty?
A to źle?
>
>> Powiedzmy, okolice średniej trudności z tego:
>> http://potyczki.mimuw.edu.pl/user.phtml?op=zadania
>
> Przejrzałem trzy. Wieże akurat nie są problemem, bo gram
> szachy. Ten z odwiedzaniem miast ciekawszy. Ten z drzewem
> jako "<bardzo ciekawa definicja>" też da się sprowadzić
> do trywialnego. Wszystkie uczą rozwiązywania problemów,
Już nie pamiętam. Były tam i trudne. Tzn ja nie wymeśliłem
sprawnego sposobu, a z matmy dośc dobry jestem.
> to takie logiczne zagadki, a z narzędzi informatycznych
> nadają się na "napisz coś co robi co wymyślisz". Niezłe,
> ale spotkałem lepsze: durny peephole, który wielkim problemem
> logicznym nie jest. Tak z innego poziomu: peephole uczy
> programowania na przykładzie przekształcania programu,
> przy okazji ucząc prostej optymalizacji (znowu: mało
> kto będzie pisał kompilator, więc jest bardziej
> abstrakcyjne niż te szachy).
Tak, ale to są inne zagadnienia. Trzeba uczyć i jednych i
drugich. Nie jednych zamiast drugich.
>
>> No i oczywiście uświadomienie istnienia pewngo pakietu
>> znanych algorytmów. Takie find-union czy drzewa
>> przedziałowe przydają się czasem, a w STL ich nie ma.
>> Pewnie są w boost, ale trzeba wiedzieć, czego szukać.
>
> Jak będę ich potrzebował, to będę o tym wiedział. Na dzisiaj
Nie, jeśli nie jesteś świadomy istnienia czegoś, to
znacznie utrudnia znalezienie tego.
To pułapka wspolczesnie modnego poglądu na edukację,
by nie uczyć faktów.
pzdr
bartekltg
Następne wpisy z tego wątku
- 14.10.12 02:43 Edek Pienkowski
- 14.10.12 02:43 bartekltg
- 14.10.12 03:05 bartekltg
- 14.10.12 03:13 Edek Pienkowski
- 14.10.12 03:39 M.M.
- 14.10.12 03:46 M.M.
- 14.10.12 04:00 bartekltg
- 14.10.12 04:07 Edek Pienkowski
- 14.10.12 04:24 M.M.
- 14.10.12 04:32 M.M.
- 14.10.12 05:38 M.M.
- 14.10.12 08:10 kenobi
- 14.10.12 08:15 kenobi
- 14.10.12 09:29 kenobi
- 14.10.12 09:39 M.M.
Najnowsze wątki z tej grupy
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
Najnowsze wątki
- 2024-11-29 Dławik CM
- 2024-11-29 [OT] Lewe oprogramowanie
- 2024-11-29 Błonie => Sales Specialist <=
- 2024-11-29 Warszawa => IT Expert (Network Systems area) <=
- 2024-11-29 Warszawa => Ekspert IT (obszar systemów sieciowych) <=
- 2024-11-29 Warszawa => Head of International Freight Forwarding Department <=
- 2024-11-29 Białystok => Inżynier Serwisu Sprzętu Medycznego <=
- 2024-11-29 Pómpy ciepła darmo rozdajoo
- 2024-11-29 Białystok => Application Security Engineer <=
- 2024-11-29 Białystok => Programista Full Stack (.Net Core) <=
- 2024-11-29 Gdańsk => Software .Net Developer <=
- 2024-11-29 Wrocław => Key Account Manager <=
- 2024-11-29 Gdańsk => Specjalista ds. Sprzedaży <=
- 2024-11-29 Chrzanów => Specjalista ds. public relations <=
- 2024-11-27 Re: UseGalileo -- PRODUKTY I APLIKACJE UŻYWAJĄ JUŻ DZIŚ SYSTEMU GALILEO