recursion - Recursive lambda expression to traverse a tree in C# -


can show me how implement recursive lambda expression traverse tree structure in c#.

ok, found free time finally.
here go:

class treenode {     public string value { get; set;}     public list<treenode> nodes { get; set;}       public treenode()     {         nodes = new list<treenode>();     } }  action<treenode> traverse = null;  traverse = (n) => { console.writeline(n.value); n.nodes.foreach(traverse);};  var root = new treenode { value = "root" }; root.nodes.add(new treenode { value = "childa"} ); root.nodes[0].nodes.add(new treenode { value = "childa1" }); root.nodes[0].nodes.add(new treenode { value = "childa2" }); root.nodes.add(new treenode { value = "childb"} ); root.nodes[1].nodes.add(new treenode { value = "childb1" }); root.nodes[1].nodes.add(new treenode { value = "childb2" });  traverse(root); 

Comments

Popular posts from this blog

windows - Why does Vista not allow creation of shortcuts to "Programs" on a NonAdmin account? Not supposed to install apps from NonAdmin account? -

c++ - How do I get a multi line tooltip in MFC -

unit testing - How to mock PreferenceManager in Android? -