午夜无码中文字幕影院,国产自产第一区c国产,久久久久久夜精品精品免费,国产99久久,夜夜夜夜曰天天天天拍国产,欧美日韩亚洲另类专区,国产精品区一区二区免费

軟題庫 學習課程
當前位置:信管網(wǎng) >> 在線考試中心 >> 試題查看
試題題型【分析簡答題】
試題內(nèi)容

一棵非空二叉樹中“最左下”結點定義為:若樹根的左子樹為空,則樹根為“最左下”結點;否則,從樹根的左子樹根出發(fā),沿結點的左孩子分支向下查找,直到某個結點不存在左孩子時為止,該結點即為此二叉樹的“最左下”結點。例如:下圖所示的以A為根的二叉樹的“最左下”結點為D,以C為根的子二叉樹中的“最左下”結點為C。二叉樹的結點類型定義如下:
typedef struct BSTNode {
int data ;
struct BSTNode *lch , *rch; //結點的左、右孩子指針
} *BSTree;

函數(shù)BSTree Find_Del (BSTree root )的功能是:若root指向一棵二茶樹的根結點,則找出該結點的右子樹上的“最左下”結點 *p,并從樹中刪除以 *p為根的子樹,函數(shù)返回被刪除子樹的根結點指針;若該樹根的右子樹上不存在“最左下”結點,則返回空指針。
【函數(shù)】
BSTree Find_Del (BSTree root)
{  BSTree p, pre;
If ( !root ) return NULL; /* root 指向的二叉樹為空樹 */
___(1)___ ; /* 令p指向根結點的右子樹 */
if ( !p ) return NULL;
___(2)___ ; /* 設置 pre 的初值 */
while ( p -> lch ) { /* 查找“最左下”結點 */
pre = p ; p = __(3)__ ;
}
if ( __(4)__ = = root ) /* root的右子樹根為“最左下”結點*/
pre -> rch =NULL;
else
__(5)__ = NULL; /* 刪除以“最左下”結點為根的子樹*/
return p;
}

查看答案

相關試題