『壹』 十萬火急,,求助大家幫忙做《數據結構》試題!!!!
你在考電大的數據結構?哇哈哈 和我一樣啊 ~~
程序填空:
以下函數是二叉排序樹的查找演算法,若二叉樹為空,則返回根結點的指針,否則,返回值是指向樹結點的
結構指針p(查找成功p指向查到的樹結點,不成功p指向為NULL)完成程序中的空格。
typedef struct Bnode
{
int key;
struct Bnode *left;
struct Bnode *right;
}Bnode;
Bnode *Bsearch(Bnode *bt,int k)
/*bt用於接收二叉順序樹的根結點的指針,k用於接收要查找的關鍵字*/
{
Bnode *p;
if (bt==(1)________)
return(bt);
p=bt;
while(p->key!=(2)________)
{
if(k<p->key)
(3)_________;
else(4)_________;
if(p==NULL) break;
}
Return(5)________;
}
以下函數為鏈隊列的出隊操作(鏈隊列中帶有頭結點),出隊結點的數據域的值由x返回,front、rear分
別是鏈隊列的隊頭、隊尾指針。
struct node
{
ElemType data;
struct node *next;
};
struct node *front,*rear;
ElemType OutQueue()
{
ElemType x;
if((1)________)
{
printf("隊列下溢錯誤!\n");
exit(1);
}
else
{
struct node *p=front->next;
x=p->data;
front->next=(2)_________;
if(p->next==NULL) rear=front;
free(p);
(3)________________;
}
}