score:2

Accepted answer
var order = 0;
foreach (var task in childrenbyparentid[null].depthfirst(parent => childrenbyparentid[parent.id]))
    task.displayorder = ++order;

score:0

    root (0)
        |
  ----------------
  |              |
a task (1)    b task (3)
  |              |
c - a  (2)    d - b  (4)

Related Query

More Query from same tag