博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

树2——搜索(前序)

Posted on 2010-10-27 21:56  猴王无敌  阅读(92)  评论(0)    收藏  举报

【原理】

遍历顺序——左、中、右

【实现】

    public class CBSTree
    {
        #region 搜索

        //中序:左->中->右
        public void InOrder()
        {
            if (null != this.m_oRootTreeNode)
            {
                if (null != this.m_oRootTreeNode.LeftTreeNode)
                {
                    this.m_oRootTreeNode.LeftTreeNode._InOrder();
                }

                Console.Write(this.m_oRootTreeNode.ToString() + ";");

                if (null != this.m_oRootTreeNode.RightTreeNode)
                {
                    this.m_oRootTreeNode.RightTreeNode._InOrder();
                }
            }
        }
         
        #endregion
    }

    public class CTreeNode
    {
        #region 遍历

        internal void _InOrder()
        {
            if (null != this.m_oLeftTreeNode)
            {
                this.m_oLeftTreeNode._InOrder();
            }

            Console.Write(this.ToString() + ";");

            if (null != this.m_oRightTreeNode)
            {
                this.m_oRightTreeNode._InOrder();
            }
        }
        
        #endregion
    }