Jestem samoukiem, profesjonalnym programistą. Jestem w tym całkiem dobry (Ruby, Unix, Clojure, Java, Objective-C), ale teraz myślę o przeniesieniu go na wyższy poziom, być może ubiegając się o studia magisterskie lub doktoranckie w CS. Jakie tematy matematyczne powinienem studiować, aby przygotować się do tego celu?
10
Odpowiedzi:
Na MIT OCW znajduje się kurs Matematyka dla informatyki , który zawiera listę tematów, które MUSISZ obejmować .
Nauka algebry abstrakcyjnej będzie dużym plusem. Ponieważ widzę w literaturze zbyt wiele odniesień do teorii grup.
źródło
Ogólnie wysoki stopień dojrzałości matematycznej znacznie ułatwia zrozumienie wielu formalnych aspektów (niekoniecznie teoretycznej) informatyki. Robienie nieletniej matematyki wraz z kierunkiem informatycznym przyniosłoby więcej korzyści niż szkody.
źródło
Algebra liniowa, teoria prawdopodobieństwa, niektóre teorie grafów / kombinatoryki na absolutnym minimum.
źródło
Niektóre rzeczy, których możesz potrzebować, niektóre więcej, niektóre mniej:
Oczywiście (prawie) wszystko będzie przydatne, szczególnie jeśli idziesz na teoretyczne dziedziny informatyki.
źródło
Wszystkie pozostałe odpowiedzi + ...
Prawdopodobnie najbardziej przydatną rzeczą, jaką możesz zrobić, jest zaangażowanie się w badania. Po wymianie stosów, przeczytanie niektórych materiałów / dokumentów w tle i ustalenie, co może Cię zainteresować, może być najskuteczniejszym sposobem przygotowania się do ukończenia szkoły.
źródło
jak dotąd doskonałe / szerokie odpowiedzi. Proponuję niektóre klasy, o których dotychczas nie wspomniano. Zajęcia esp, które skłaniają się ku zastosowaniu teorii i wymagają od ucznia napisania / debugowania kodu i wizualizacji [wyników graficznych] jako części zadań. lub buduj / debuguj działające systemy. itp.
źródło
Świetne pytanie. Niedawno zdałem egzamin kwalifikacyjny doktora, który był częściowo egzaminem wstępnym - połączenie przedmiotów licencjackich i magisterskich.
Aby być praktycznym - zależy to od szkoły, do której planujesz uczęszczać, rodzaju wymaganego egzaminu wstępnego i rodzaju oferowanego programu.
Niektóre wymagają GRE, więc przygotowanie do rejestracji nie jest specyficzne dla CS. Niektóre wymagają przedmiotu GRE, który odpowiada 5-6 podstawowym kursom licencjackim CS, a teoria zostanie omówiona (teoria automatów, matematyka dyskretna itp.)
Aby uzyskać najbardziej podstawowe tło, wziąłbym Discrete Math, algorytmy i teorię obliczeń z Ad Uni .
Istnieją inne fantastyczne źródła z MIT i Stanford, ale te trzy kursy, przedstawione przez wielkiego Shai Simonsona, są doskonałym fundamentem.
Mam nadzieję że to pomoże.
źródło
Naprawdę popieram powyższe odpowiedzi. Mogę dodać następujące, które mogą być przydatne do dużego obrazu matematyki w CS:
Matematyka może być częścią samego celu; analiza algorytmów, granice złożoności, dowody deterministyczne lub probabilistyczne, algorytmy równoległe i wiele innych obszarów badawczych związanych z czasem i przestrzenią obliczeniową.
Z drugiej strony matematyka może być faktyczną ścieżką dla celu na wyższym poziomie; PDE, równania świetlne dla grafiki komputerowej, cały obszar badań fizyki obliczeniowej (układy dynamiczne, mechanika statystyczna, tworzenie galaktyk), aby wymienić niektóre z nich.
W odpowiednich okolicznościach obie formy matematyki mogłyby żyć razem.
źródło