DS二叉排序樹之查詢

2021-10-12 04:50:18 字數 1183 閱讀 3646

題目描述

給出乙個資料序列,建立二叉排序樹,並實現查詢功能

對二叉排序樹進行中序遍歷,可以得到有序的資料序列

輸入

第一行輸入t,表示有t個資料序列

第二行輸入n,表示首個序列包含n個資料

第三行輸入n個資料,都是自然數且互不相同,資料之間用空格隔開

第四行輸入m,表示要查詢m個資料

從第五行起,輸入m行,每行乙個要查詢的資料,都是自然數

以此類推輸入下乙個示例

輸出

第一行輸出有序的資料序列,對二叉排序樹進行中序遍歷可以得到

從第二行起,輸出查詢結果,如果查詢成功輸出查詢次數,如果查詢失敗輸出-1

以此類推輸出下乙個示例的結果

樣例輸入

22 33 55 66 11 44

樣例輸出

11 22 33 44 55 66

-1

#include

using

namespace std;

int flag,cnt;

class

node

node

(int _data)

~node()

};class

tree};

void

insert

(node *

&node,

int data)

if(node-

>data < data)

else

}void

search

(node *node,

int data)

if(data < node-

>data)

else

}void

output

(node *node)

intmain()

output

(tree.root)

; cout

cin>>m;

while

(m--

)else

cout

}

DS二叉排序樹之查詢

題目描述 給出乙個資料序列,建立二叉排序樹,並實現查詢功能 對二叉排序樹進行中序遍歷,可以得到有序的資料序列 輸入第一行輸入t,表示有t個資料序列 第二行輸入n,表示首個序列包含n個資料 第三行輸入n個資料,都是自然數且互不相同,資料之間用空格隔開 第四行輸入m,表示要查詢m個資料 從第五行起,輸入...

DS二叉排序樹之刪除

給出乙個資料序列,建立二叉排序樹,並實現刪除功能 對二叉排序樹進行中序遍歷,可以得到有序的資料序列 第一行輸入t,表示有t個資料序列 第二行輸入n,表示首個序列包含n個資料 第三行輸入n個資料,都是自然數且互不相同,資料之間用空格隔開 第四行輸入m,表示要刪除m個資料 從第五行起,輸入m行,每行乙個...

查詢 二叉排序樹

順序查詢 順序查詢又叫線性查詢,是最基本的查詢技術,它的查詢過程是 從表中第乙個記錄開始,逐個進行記錄的關鍵字和給定值比較,若某個記錄的關鍵字和給定值相等,則查詢成功,找到所查的記錄 如果知道最後乙個記錄,其關鍵字和給定值比較都不等時,則表中沒有所查的記錄,查詢不成功。順序查詢演算法實現 如下 順序...