Non voglio più fare matematica all'università che a me, il corso di teoria dei grafi non è un requisito ma è "raccomandato" dal dipartimento CS. Vale la pena imparare la teoria dei grafi come per un programmatore?Teoria dei grafi utile per gli sviluppatori di software?
risposta
Sorprendentemente molti problemi in CS possono essere ridotti a problemi di grafico. Senza conoscere la teoria dei grafi di base, queste soluzioni ti sfuggiranno e potresti finire per reinventare la ruota o trovare una soluzione più adatta. Ci tornerei sicuramente.
Dal momento che non si vuole prendere "più matematica al college di quanto [si] deve", sembra ragionevole dedurre che non ci si vede in un lavoro in cui si avrà bisogno di molta informatica. Ci sono un sacco di lavori di programmazione là fuori dove non userete spesso l'informatica, ma la conoscenza di ciò è sempre utile. Se la mia supposizione originale che non vuoi un lavoro pesante di CS è imprecisa, allora probabilmente dovresti mordere il proiettile e prendere il corso di teoria dei grafi.
Quindi in risposta alla domanda: dipende dal tipo di programmazione che si desidera eseguire. Per la programmazione scientifica, matematica, di tipo OS probabilmente sarebbe utile. Per la programmazione di applicazioni aziendali non tanto, con l'avvertenza che la conoscenza di CS può solo aiutare qualsiasi programmatore.
Mi chiedo, tuttavia, se davvero non ti piace la matematica, sei sicuro che dovresti essere un CS maggiore? CS, dopo tutto, è piuttosto orientato alla matematica.
Se avessi dovuto fare di nuovo, sarei stato un importante di matematica.
Per aggiungere un po 'di ciò che ha detto BrokenGlass, i problemi di grafico e di ricerca probabilmente coprono una buona parte di tutti i problemi quando li si riduce all'essenziale, e poiché la ricerca di solito opera su un grafico grafico, la teoria è probabile. una buona cosa avere.
So che mi pento di non averlo preso. Mordere il proiettile.
Sei sicuro di sapere cos'è la teoria del grafico? Non stiamo parlando di grafici di tipo "graphing a function", stiamo parlando di grafici di "nodi e archi". la "teoria dei grafi" non riguarda il calcolo numerico.
La programmazione, in particolare la programmazione orientata agli oggetti, riguarda tutti questi tipi di grafici. Grafici di pulsanti e widget, grafici di record di database relazionali, grafici che descrivono il flusso di eventi. Molti-a-uno, uno-a-molti, alberi, stelle, con e senza cicli. ecc. ecc.
Camminare su un terreno pericoloso qui, ma se ritieni che la matematica sia difficile o noiosa, i computer potrebbero non essere la cosa giusta per te.
C'è un argomento che non ho visto in altre risposte: social network.
Tutti gli algoritmi interessanti (attuali e futuri) che esplodono le informazioni generate da Twitter, FB e simili sono resi possibili grazie ai precedenti sviluppi nella teoria dei grafi.
+1 in matematica maggiore, vorrei aver fatto anche matematica. – GWW
@gww si. Lo avrei combinato con la fisica. Immagino che chiunque possa sempre ottenere un altro grado ... – hvgotcodes
"CS dopotutto è davvero tutto matematico." Non potrei essere in disaccordo di più, dire che CS è tutto matematico è come dire che CS è tutta la linguistica. Sicuramente ci sono elementi di matematica in CS come ci sono elementi di linguistica in CS, ma non c'è bisogno di piacere o essere un appassionato di matematica per fare del bene in CS. Anche Jeff Atwood è d'accordo con me. – GTL