<p>I'm trying to reteach myself some long forgotten math skills. This is part of a much larger project to effectively "teach myself software development" from the ground up (the details are <a href="http://www.appscanadian.ca/archives/cs-101-introduction-to-computer-science/" rel="noreferrer">here</a> if you're interested in helping out).  </p>

<p>My biggest stumbling block so far has been math - how can I learn about algorithms and asymptotic notation without it??</p>

<p>What I'm looking for is some sort of "dependency tree" showing what I need to know. Is calculus required before discrete? What do I need to know before calculus (read: components to the general "pre-calculus" topic)? What can I cut out to fast track the project ("what can I go back for later")?</p>

<p>Thank!</p>

[{'answer_id': 21962, 'author': 'Mark Harrison', 'author_id': 116, 'author_profile': 'https://Stackoverflow.com/users/116', 'pm_score': 4, 'selected': True, 'text': "<p>Here's how my school did it:</p>\n\n<pre><code>base:\n    algebra\n    trigonometry\n    analytic geometry\n\ntrack 1                       track 2               track 3\n    calc 1                       linear algebra        statistics\n    calc 2                       discrete math 1\n    calc 3 (multivariable)       discrete math 2\n    differential equations \n</code></pre>\n\n<p>The base courses were a prerequisite for everything, the tracks were independent and taken in order.</p>\n\n<p>So to answer your specific question, only algebra is needed for discrete.  If you want to fast track, do one of these:</p>\n\n<pre><code>algebra, discrete\nalgebra, linear algebra, discrete (if you want to cover matrices first)\n</code></pre>\n\n<p>HTH...  It about killed me when I returned to school and took these, but I'm a much better programmer for it.  Good Luck!</p>\n"}, {'answer_id': 22052, 'author': 'Anders Eurenius', 'author_id': 1421, 'author_profile': 'https://Stackoverflow.com/users/1421', 'pm_score': 1, 'selected': False, 'text': "<p>Usually, an overview of each field is a good thing to have when looking at any topic, but it's rare to have a genuine dependence the way we'd think of it. Algebra is always needed. I can't think of a time I've needed any trigonometry. (except to expand it with new things from calculus) I'm even quite sure people wouldn't agree on what a dependency graph would look like, or even in which field each topic belongs.</p>\n\n<p>I think the right way to approach it is to just collect a wide range of topics from all of branches and read them in whatever order you feel like, recording dependencies between topics as you go. (respecting them, or not, as you please.) This should have the far more important property of <strong>keeping the student interested</strong>.</p>\n\n<p>It's also my experience that if something just has you stumped, just mark it and set it aside for later.</p>\n\n<p>As for my school, well, it was similar to Harrison's:</p>\n\n<ul>\n<li>cominatorics,</li>\n<li>linear algebra,</li>\n<li>calculus,</li>\n<li>numerical analysis (error analysis in particular.)</li>\n<li>logic,</li>\n<li>statistics, (with operations research / queueing therory.)</li>\n</ul>\n"}, {'answer_id': 76938, 'author': 'Rob Dickerson', 'author_id': 7530, 'author_profile': 'https://Stackoverflow.com/users/7530', 'pm_score': 3, 'selected': False, 'text': "<p>My advice is to lazily evaluate your own dependency tree. Study something you think is interesting -- when you hit something you don't know, go learn about it. </p>\n\n<p>I always find it easier to learn something new when I already have a context in which I want to use it.</p>\n"}, {'answer_id': 90607, 'author': 'nsanders', 'author_id': 1244, 'author_profile': 'https://Stackoverflow.com/users/1244', 'pm_score': 2, 'selected': False, 'text': '<p>This is a particularly cool site for visualizing how everything in the math world fits together:</p>\n\n<p><a href="http://www.math.niu.edu/Papers/Rusin/known-math/index/mathmap.html" rel="nofollow noreferrer">http://www.math.niu.edu/Papers/Rusin/known-math/index/mathmap.html</a></p>\n\n<p>It\'s also got short summaries of many subfields you\'ve probably never heard of, which is fun.</p>\n'}, {'answer_id': 90617, 'author': 'J D OConal', 'author_id': 17023, 'author_profile': 'https://Stackoverflow.com/users/17023', 'pm_score': 1, 'selected': False, 'text': '<p>Take a look at <a href="http://mathworld.wolfram.com/" rel="nofollow noreferrer">MathWorld</a>. Browse topics or search for one, you\'ll get your position in the overall tree.</p>\n'}]
['https://Stackoverflow.com/questions/21879', 'https://Stackoverflow.com', 'https://Stackoverflow.com/users/1588/']