(map或二叉搜尋樹)樹種統計

2021-08-15 15:46:16 字數 1764 閱讀 7286

隨著衛星成像技術的應用,自然資源研究機構可以識別每一棵樹的種類。請編寫程式幫助研究人員統計每種樹的數量,計算每種樹佔總數的百分比。

輸入首先給出正整數n(≤),隨後n行,每行給出衛星觀測到的一棵樹的種類名稱。種類名稱由不超過30個英文本母和空格組成(大小寫不區分)。

按字典序遞增輸出各種樹的種類名稱及其所佔總數的百分比,其間以空格分隔,保留小數點後4位。

29

red alder

ashaspen

basswood

ashbeech

yellow birch

ashcherry

cottonwood

ashcypress

red elm

gumhackberry

white oak

hickory

pecan

hard maple

white oak

soft maple

red oak

red oak

white oak

poplan

sassafras

sycamore

black walnut

willow

ash 13.7931%

aspen 3.4483%

basswood 3.4483%

beech 3.4483%

black walnut 3.4483%

cherry 3.4483%

cottonwood 3.4483%

cypress 3.4483%

gum 3.4483%

hackberry 3.4483%

hard maple 3.4483%

hickory 3.4483%

pecan 3.4483%

poplan 3.4483%

red alder 3.4483%

red elm 3.4483%

red oak 6.8966%

sassafras 3.4483%

soft maple 3.4483%

sycamore 3.4483%

white oak 10.3448%

willow 3.4483%

yellow birch 3.4483%

map中第一元素是按字典序排列的,所以這道題可以用map來實現。

另外,考慮到二叉排序樹的中序序列也是有序的,所以我們還可以採用二叉排序樹。

**1(map):

#include#include#includeusing namespace std;

int main()

return 0;

}

**2(二叉排序樹):

#include#includeusing namespace std;

typedef struct binode *bitree;

typedef struct binodebinode;

bitree insert(bitree t,string t)

else

return t;

}void inorder(bitree t,int n)

}int main()

inorder(t,n);

return 0;

}

5 24 樹種統計 二叉搜尋樹

5 24 樹種統計 25分 隨著衛星成像技術的應用,自然資源研究機構可以識別每一棵樹的種類。請編寫程式幫助研究人員統計每種樹的數量,計算每種樹佔總數的百分比。輸入格式 輸入首先給出正整數n le 10 5 10 5 隨後n行,每行給出衛星觀測到的一棵樹的種類名稱。種類名稱由不超過30個英文本母和空格...

二叉搜尋樹(二叉排列樹或二叉查詢樹)

1 二叉排序樹性質 1 就是若它的左子樹不空,則左子樹上所有節點的值均小於它的根節點的值 2 若它的右子樹不空,則右子樹上所有節點的值均大於其根節點的值。3 換句話說就是 任何節點的鍵值一定大於其左子樹中的每乙個節點的鍵值,並小於其右子樹中的每乙個節點的鍵值。2 二叉排序樹查詢 要在二叉樹中找出查詢...

二叉搜尋樹 二叉搜尋樹

題目 二叉搜尋樹 time limit 2000 1000 ms j a others memory limit 32768 32768 k j a others total submission s 6945 accepted submission s 3077 problem descripti...