5 24 樹種統計 25分

2022-03-06 03:54:28 字數 2695 閱讀 6873

5-24 樹種統計   (25分)

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

輸入首先給出正整數n(\le 10^5≤10​5​​),隨後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%

按字典序排列的問題可以多考慮用二叉樹

方法一**:(用stl編寫)

1 #include 2 #include   

3 #include 4 #include 5

6#define max 100000 + 10 78

using

namespace

std;

910 typedef struct

tree;

1415

tree tree[max];

1617

int member = 1

; 18 mapmp;

1920

void findtree( string

name )

29else

3334}

3536

intcmp( tree a, tree b )

3940

intmain()

5051 sort( tree + 1, tree +member, cmp );

5253

for( int i = 1; i < member; i++)

5657

return

0;

58 }

方法二**:(二叉搜尋樹)

1 #include2 #include3 #include

4#define max 30

5 typedef char

elemtype;

6 typedef struct node *bintree;

7 typedef struct

node

8node;

14bintree insert(bintree bst,elemtype s)

1523

else

24if(strcmp(bst->s,s)<0

)25 bst->rchild=insert(bst->rchild,s);

26else

if(strcmp(bst->s,s)>0

)27 bst->lchild=insert(bst->lchild,s);

28else

29 bst->count++;

30return

bst;31}

32void inorder(bintree bst,int n)//

中序遍歷搜尋二叉搜尋樹,就得到了按字典序列遞增的輸出序列

3340}41

intmain()

4254

inorder(t,n);

55return0;

56 }

5 24 樹種統計

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

7 24 樹種統計(25 分)

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

7 24 樹種統計(25 分)

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