码迷,mamicode.com
首页 > 其他好文 > 详细

二叉树 广度优先遍历

时间:2017-04-12 01:59:29      阅读:185      评论:0      收藏:0      [点我收藏+]

标签:遍历   line   void   while   move   adt   http   public   walk   

  1. /**
  2. * 广度优先遍历
  3. * **/
  4. public void BreadthFirstTreeWalk(BSTreeNode<T> root, Action<BSTreeNode<T>> func) {
  5. if (root == null) {
  6. return;
  7. }
  8. List<BSTreeNode<T>> processQueue = new List<BSTreeNode<T>>();
  9. processQueue.Add(root);
  10. BSTreeNode<T> current;
  11. while (processQueue.Count != 0) {
  12. current = processQueue[0];
  13. processQueue.RemoveAt(0);
  14. func(current);
  15. if (current.left != null) {
  16. processQueue.Add(current.left);
  17. }
  18. if (current.right != null) {
  19. processQueue.Add(current.right);
  20. }
  21. }
  22. return;
  23. }





二叉树 广度优先遍历

标签:遍历   line   void   while   move   adt   http   public   walk   

原文地址:http://www.cnblogs.com/xiejunzhao/p/62d014c2f33887907af88f97ebccbe6b.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!