Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>I'm with Steve314 for the most part but wanted to specify some things.</p> <p>Learn enough Java (or whatever else) to be dangerous. Then the main data structures (lists, stacks, maps, trees, etc), which does include some algorithms for traversing them. Do the rest of your algorithms work after that. Here are some specific goals, if you want them, that more or less mirror the order of <a href="http://rads.stackoverflow.com/amzn/click/0471738840" rel="nofollow noreferrer">Data Structures &amp; Algorithms in Java</a>.</p> <ol> <li>Understand Java and OO on a basic level. Specifically inheritance and polymorphism (as Java define them) and how to use generics.</li> <li>Have a basic understanding of Big-O (how it's defined and why you can drop lower order terms).</li> <li>Be able to use, write, and trace recursive functions.</li> <li>Code singly- and doubly-linked lists. They should implement Iterable and support adding and removing elements. Use them to implement a stack and a queue.</li> </ol> <p>A couple of things to know about once you do dive into a book like <em>Algorithms</em>:</p> <ul> <li>MIT OCW has <a href="http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-046j-introduction-to-algorithms-sma-5503-fall-2005/" rel="nofollow noreferrer">videos lectures</a> up from the class that <em>Algorithms</em> was written for, given by one of its authors.</li> <li>The purpose of a book like <em>Algorithms</em> is not just to show you specific algorithms, but to teach you how to analyze their running times. You need a small amount of discrete math for that, basically sums and recurrence relations. Look on here for big-O questions to see what I mean.</li> </ul> <p>Speaking of videos, I think this is a way better place to start: <a href="http://www.youtube.com/watch?v=kMzH3tfP6f8" rel="nofollow noreferrer">Programming Abstractions (Stanford, Julie Zelenski)</a>. I'm very happy that those exist.</p> <p>(As it happens I am in the middle of implementing a map with a <a href="http://en.wikipedia.org/wiki/Binary_search_tree" rel="nofollow noreferrer">binary search tree</a>.)</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    3. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload