Evan Martin (evan) wrote in evan_tech,
Evan Martin


The algorithm is just this:
void output_order(userid root) {
  queue<userid> roots;
  while (!roots.empty()) {
    const userid u = roots.front();
    const EdgeSet& oe = nodes[u].outedges;
    printf("%s\n", usermap[u].c_str());
    for (EdgeSet::const_iterator i = oe.begin();
         i != oe.end(); i++) {  // \n to fit on lj
      if (--nodes[*i].indegree == 0)

Getting to that place was about 10x more support code.

But more importantly, the results are crap-- I don't have enough of a picture to really get anything out of the LJ data. Oh well, it wasn't really a useful project anyway.

  • blog moved

    As described elsewhere, I've quit LiveJournal. If you're interested in my continuing posts, you should look at one of these (each contains feed…

  • dremel

    They published a paper on Dremel, my favorite previously-unpublished tool from the Google toolchest. Greg Linden discusses it: "[...] it is capable…

  • treemaps

    I finally wrote up my recent adventures in treemapping, complete with nifty clickable visualizations.

  • Post a new comment


    default userpic
    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 1 comment