91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

數據結構--二叉樹的線索化

發布時間:2020-06-20 05:44:20 來源:網絡 閱讀:430 作者:wpfbcr 欄目:編程語言

線索二叉樹它解決了無法直接找到該結點在某種遍歷序列中的前趨和后繼結點的問題,出現了二叉鏈表找左、右孩子困難的問題,線索二叉樹又分為前序線索化,中序線索化和后序線索化,分別用不同的邏輯去實現。

線索二叉樹的實現思想:借用一個枚舉類型tag其中包含兩個狀態Link(代表有數據),thread(代表下一個節點為空)在一個節點的左節點或者右節點為空的情況下,將它的left或right設為thread,則它的左或右訪問的是改遍歷模式下訪問到的下一個節點數據,這樣就完成了跳到另一顆子樹的過程,減少了遞歸的次數。

數據結構--二叉樹的線索化先序線索化

void _PrevorderThreading(BinaryTreeXsh<T> *cur, BinaryTreeXsh<T> *&prev)
	{
		if (cur == NULL)
		{
			return;
		}
		if (cur->_leftnode==NULL)
		{
			cur->_LeftTag=THREAD;
			cur->_leftnode=prev;
		}
		if (prev&&prev->_rightnode==NULL)
		{
			prev->_RightTag = THREAD;
			prev->_rightnode = cur;
		}
		prev = cur;
		if (cur->_LeftTag == LINK)
		{
			_PrevorderThreading(cur->_leftnode, prev);
		}
		if (cur->_RightTag == LINK)
		{
			_PrevorderThreading(cur->_rightnode, prev);
		}
	}

數據結構--二叉樹的線索化中序線索化

	void _InorderThreading(BinaryTreeXsh<T>* root, BinaryTreeXsh<T> *&prev)
	{
		BinaryTreeXsh<T>*cur = root;
		if (cur == NULL)
		{
			return;
		}
		_InorderThreading(cur->_leftnode, prev);
		
		if (cur->_leftnode == NULL)
		{
			cur->_LeftTag = THREAD;
			cur->_leftnode = prev;
		}
		if (prev&&prev->_rightnode == NULL)
		{
			prev->_RightTag = THREAD;
			prev->_rightnode = cur;
		}
		prev = cur;
		_InorderThreading(cur->_rightnode, prev);
	}

數據結構--二叉樹的線索化后序線索化

	void _PostorderThreading(BinaryTreeXsh<T>*root, BinaryTreeXsh<T>*&prev)
	{
		BinaryTreeXsh<T>*cur = root;
		if (cur == NULL)
		{
			return;
		}
		_PostorderThreading(cur->_leftnode, prev);
		_PostorderThreading(cur->_rightnode, prev);
		if (cur->_leftnode==NULL)
		{
			cur->_LeftTag = THREAD;
			cur->_leftnode = prev;
		}
		if (prev&&prev->_rightnode == NULL)
		{
			prev->_RightTag = THREAD;
			prev->_rightnode = cur;
		}
		prev = cur;
	}




向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

扬中市| 巧家县| 崇明县| 红原县| 郴州市| 绥滨县| 宁河县| 连平县| 赞皇县| 桂东县| 星子县| 额敏县| 海盐县| 广汉市| 金川县| 凤翔县| 永年县| 丰城市| 邹平县| 濮阳县| 临清市| 永康市| 固阳县| 平乡县| 平山县| 榕江县| 麻江县| 荔浦县| 当涂县| 明星| 钦州市| 兰考县| 上栗县| 天祝| 合作市| 定日县| 昭平县| 新宾| 巢湖市| 易门县| 平顺县|