algorytmy i struktury danych programowanie
Pavlowicz: Siema, potrzebuję książek i tutoriali z podstaw algorytmów i struktur danych używanych w
programowaniu możecie coś polecić drodzy Informatycy/studenci itd Od czego dobrze byłoby
zacząć?
18 mar 20:20
18 mar 20:29
Pavlowicz: ok dzięki, znalazłem to u siebie na półce Cormena wyd. Polskie, jest tego trochę w pseudokodzie
co wystarczy zrozumieć,wykuć,umieć przekuć na kod , algorytmy na początku się nie przydają ale
sporo słyszałem,że na rozmowach kwalifikacyjnych o nie pytają i dostajesz jakieś zadanie
algorytmiczne do rozwiązania. Swoją drogą z programowani mógłbyś np zapodać kilka takich zadań
gdzie trzeba posłużyć się jakimś algorytmem z Cormena, any idea? Te zadania z Cormena są dość
nie mało realistyczne tzn nie zawierają żadnych zadań związanych z programowaniem, natomiast
pełno tam zadań z teorii które z programowaniem nie mają nic z wspólnego, a z biadoleniem na
jakimś uniwerku wiele.
18 mar 20:42
Trivial:
Algorytmy z natury rzeczy są dużo bardziej teoretyczne. Podstawowe idee, opisane między innymi
w Cormenie używane są wszędzie − z wyjątkiem tych bardziej zaawansowanych, które używane są w
wyspecjalizowanych zastosowaniach. Każdy przyzwoity język programowania ma bibliotekę
standardową z drzewami, listami, stosami, mapami, tablice haszowane, itd. Korzysta się z nich
w codziennej pracy, więc warto wiedzieć w jaki sposób działają.
Nie wiem jak jest z zadaniami, ale czy nie możesz sobie sam ich wymyślić? Przykładowo,
zaimplementować jakiś algorytm i porównać z innym, który robi to samo. Jak działają dla dużej
ilości danych? Jak dla małej?
A na rozmowach kwalifikacyjnych mogą pytać o cokolwiek.
18 mar 21:03
Pavlowicz: ok zrozumiałem,dziękuje za odp, a kojarzysz dobry tutorial do assembly x86 na pc/windows lub
linuks książki itd ? Miałeś coś styczności z tym językiem na studiach/w pracy?
chodzi o wytłumaczenie tych rzeczy które trzeb wiedzieć przy programowaniu
niskopoziomowym,rejestry,flagi,ogólne zasady działania peceta, oraz składnia assembera.
Obecnie na stronie helionu nie znalazłem nic ciekawego

Assembly może jako 3−ci język
programowania zaczne przeglądać go po C i C++ jak już sobie popisze coś w C i C++ to zerkne i
zobacze czy taki diabeł straszny,może napisze kilka prostych programów ale bardziej mnie
interesuje zrozumienie jak co działa w assembly i jak to się przekłada na inne języki
programowania.
19 mar 17:48
Trivial:
Pavlowicz, zamiast uczyć się wszystkiego na raz, proponuję uczyć się tych rzeczy po
kolei... Zacznij od C i naucz się go dobrze. Język C jest minimalistyczny − jego nauka nie
powinna zająć zbyt długo. Na pewno nie warto zaczynać od assembly.
20 mar 10:40
wredulus_pospolitus:
Pavlowicz ... dobra rada −−− jako programista/informatyk będziesz częściej miał styczność z tym
'biadoleniem na jakimś uniwerku' niż z właściwym programowaniem.
Pisanie kodu to zabawa na parę godzin ... 'rozwiązanie problemu' to zabawa na długie miesiące.
Proponuję Ci teraz zastanowić się poważnie nad tym kim chcesz być w drabince:
1) Programistą (czyli człowiekiem, którego zadaniem jest 'przeklepanie' kodu do komputera)
2) Twórcą kodu (czyli człowiekiem, który dostając konspekt tworzy program ubierając go w kod)
3) Twórcą programu (czyli człowiekiem, który tworzy algorytmy, które później twórcy kodu
'przekują' na kod programu)
4) Przedstawicielem (czyli człowiekiem, który wyciągnie wszelkie konieczne informacje od
klienta, na temat tego jak program <który zleca stworzyć> ma pracować ... tworzy coś na wzór
'schematu blokowego', który przekazuje do twórcy programu)
To są cztery stanowiska − oczywiście, w niektórych firmach są one połączone (ze względu na małe
środki finansowe i/lub zdolnych ludzi).
Jeżeli myślisz nad tym, aby być kolejnym Billem Gates'em (czy kto tam teraz jest 'na topie')
... albo chociaż porządniej zarabiać ... to właśnie te "zadania z teorii" musisz mieć
opanowane w mały paluszku.
To nie problem wklepać kod, to nie problem kod stworzyć ... problemem jest stworzyć 'całą
otoczkę' czyli wpaść na pomysł, jak program ma działać, co będzie potrzebował, co ma dawać, co
i gdzie może się 'wyhaczyć' −−− za to 'kasę się dostaje', a kod może przeklepać pierwszy
lepszy człowiek po 2 miesięcznym przeszkoleniu.
20 mar 10:59
Trivial:
wredulus, nie rozumiem czym różni się w tej Twojej drabince programista od twórcy kodu.
20 mar 11:47
wredulus_pospolitus:
Programista "nie tworzy" kodu −−− trochę idiotyczne stanowisko, ale spotkał się z takim kolega
pracujący dla specjalizującej się w oprogramowaniu analitycznym.
W tejże firmie 'programiści' implementują kod stworzony przez przełożonego i go testują, ale
nie nanoszą żadnych korekt.
20 mar 12:07
Trivial: Rzeczywiście idiotyczne.
20 mar 12:10
asdf: Pavlowicz − zacznij od C:
jak chcesz to zrob sobie:
1 − kolko i krzyzyk
2 − obliczanie wyznacznika metodą Gaussa

3 − sudoku (to moze byc juz trudniejsze)
4 − saper (tu tez trzeba chwile pomyslec, zeby fajnie dzialalo trzeba znac rekurencje)
mala podpowiedź: zacznij robić, a nie rozpisywac sie ktora ksiazka jest najlepsza..
20 mar 15:28
Woźniak: Oj Woźniak, Woźniak...
20 mar 22:58
Pavlowicz: ok dziękuje wredulus za zwrócenie uwagi na pewną istotną sprawę, jest w tym logika

C jest proste już przeczytałem do niego 700 stronnicowy podręcznik w 20−25 dni.Teraz czytam C++
S.Praty i to trochę dłużej zajmie.
Billem Gatesem nie chcem zostać, ale zaczne od tego co każdy czyli od algorytmów i klepania
kodu.
Jak trochę popisze w C i C++ poczytam Cormena to spróbuje coś samemu wykombinować, na początku
może gra w 2D z prostą kolorową grafiką.Chociaż na chwilę obecną nie mam pomysłu z jakiego
środowiska i bibliotek skorzystać.
21 mar 16:04
asdf:
do gry mozesz wykorzystac te biblioteki:
http://cpp0x.pl/kursy/Kurs-OpenGL-C++/Pierwszy-program/103
poczytaj tez o
glut, QT − mozliwosci jest duzo, np.
https://informatyka.wroc.pl/node/473
P.S na poczatku jednak bym nie zajmowal sie takimi rzeczami − po prostu poznawal jak dzialają
klasy, dziedziczenie, operatory. proste, male programiki, pozniej listy, drzewa − ogolnie:
slowniki. Dopiero przy fundamentalnych podstawach brac się za gre, bo nie widze sensu
tworzenia gry bez znajomosci struktur danych,
ale to tylko moje zdanie
21 mar 21:57