a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 學院 > 開發設計 > 正文

二叉排序樹(建樹)

2019-11-14 10:10:11
字體:
來源:轉載
供稿:網友

PRoblem Link:http://139.129.36.234/problem.php?id=1274

題目描述

二叉排序樹,也稱為二叉查找樹。先給你N個關鍵值各不相同的結點,要求那你按順序插入一個初始為空樹的二叉排序中,每次插入成功后,求相應的父節點的關鍵字值,如果沒有父節點,則輸出-1.

輸入

第一行一個數字N(N<=100),表示待插入節點數。第二行,N個互不相同的正整數,表示要順序插入節點的關鍵字值,這些值不超過108

輸出

輸出一行N個數,分別表示每次插入節點后,該節點對于的父節點的關鍵字值。

樣例輸入

52 5 1 3 4

樣例輸出

-1 2 2 5 3 

提示

來源

北郵機試真題

AC code:

#include<iostream>#include<algorithm>#include<stdio.h>#include<map>#include<math.h>#include<string.h>#include<queue>#include<vector>#include<set>#define LL long long#define exp 1e-9#define MAXN 1000010using namespace std;typedef struct BTNode{	int data;	BTNode *lchild;	BTNode *rchild;}BTNode;void insertBT(BTNode *&bt,int x){	BTNode *pre,*p;	p=bt;	int dir=0;	if(p==NULL)	{		bt = (BTNode *)malloc(sizeof(BTNode));		bt->data=x;		bt->lchild=NULL;		bt->rchild=NULL;		printf("-1 ");	}	else	{		while(p!=NULL)		{			pre=p;			if(p->data>x)			{				p=p->lchild;			}			else			{				p=p->rchild;			}		}		p = (BTNode *)malloc(sizeof(BTNode));		p->data=x;		p->lchild=NULL;		p->rchild=NULL;		if(pre->data>x)		{			pre->lchild=p;		}		else		{			pre->rchild=p;		}		printf("%d ",pre->data);	}}int main(){//	freopen("D://in.txt","r",stdin);	int n,i,x;	scanf("%d",&n);	BTNode *bt=NULL;	for(i=1;i<=n;i++)	{		scanf("%d",&x);		insertBT(bt,x);	}	puts("");	return 0;}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 99国产精品 | 久草精品视频在线播放 | 午夜成人在线视频 | 欧美一区二区免费 | 亚洲男人天堂网 | 国产欧美一区二区精品性色 | 亚洲欧美一区二区三区视频 | 哪里有免费的黄色网址 | 日本天堂一区二区 | 日韩精品av一区二区三区 | 91偷拍精品一区二区三区 | 91精品国产欧美一区二区 | 日韩欧美精品在线 | 亚洲精品大片 | 精品欧美 | 播放毛片 | 蜜桃视频网站在线观看 | 婷婷成人在线 | 视频在线一区 | 欧美黑人一区 | av香港经典三级级 在线 | 亚洲 欧美 日韩 精品 | 黄色毛片在线播放 | 日韩中文字幕国产 | 中文成人在线 | 91久久精品 | 国产精品久久久久免费视频 | 天天操综 | 中文字幕在线一区二区三区 | 一级全黄少妇性色生活片毛片 | 国产91久久精品一区二区 | www在线观看国产 | 91视频日韩 | 精品日韩欧美一区二区三区在线播放 | 国产精品视频久久久 | 日本黄色电影网址 | 91精品中文字幕一区二区三区 | 精品久久久久久久久久久久久久 | 国产精品久久久久久久久久久久午夜片 | www久久综合| 日韩电影免费在线观看中文字幕 |