title: Traversing arbitrarily large binary tree inorder
body: <p>I'm stuck at finding a solution. C#, .NET 4.0, VS2010</p>
  
  <p>I can easily write a recursive one, but can't for the life of me figure out something that won't overflow the stack if the tree is arbitrarily large.</p>
  
  <p>This is a binary tree question, and i am trying to write a </p>
  
  <pre><code>public IEnumerable&lt;T&gt; Values()
  </code></pre>
  
  <p>method.</p>
  
  <p>Here is the full code in case you are interested: <a href="http://pastebin.com/xr2f3y7g" rel="nofollow noreferrer">http://pastebin.com/xr2f3y7g</a></p>
  
  <p>Obviously, the version currently in there doesn't work. I probably should mention that I am a newbie in C#, transitioning from C++.</p>