二叉樹是一種每個節(jié)點最多有兩個子樹的結構。有一種特殊的二叉樹稱為完全二叉樹,其特點是樹中的結點按從上至下、從左到右的順序進行存儲,每個根節(jié)點連接2個子節(jié)點,直至存儲完畢。如圖a為完全二叉樹,而圖b則不是完全二叉樹。
某學校學生參加模擬商賽活動,所有參賽隊員需組成一個模擬公司,該公司組織架構是一個完全二叉樹,如圖c所示。為了合理分配每位參賽隊員在公司組織架構中的位置,公司的組成規(guī)則如下:
1)公司的所有成員以能力值確定最終的崗位層次,能力值最高的位于第1層,即任命為董事長,依次向下。
2)每個崗位的下屬能力值不超過自己的上司,如開發(fā)經理的能力值不能超過技術總監(jiān)。
3)兩個不同的類型的同級崗位之間能力值沒有相關性,即產品經理與咨詢師屬于兩個不同類型的同級崗位,沒有相關性。如圖d所示,數(shù)組a(1)~a(6)依次存儲了圖c中所有崗位對應的員工能力值。
若此時有新隊員進入公司組織,在圖d所示的完全二叉樹中再增加一個值為a(10)=7的新元素構建新二叉樹的方法如下:
第一步:判斷新節(jié)點位置,a(10)應放在節(jié)點a(5)下方;
第二步:因a(10)>a(5),交換a(10)和a(5)的值;a(5)>a(2),再次交換a(2)和a(5)的值第三步:因a(2)<a(1),無需交換,新元素已放入正確位置,構建成新二叉樹,上移結束。
目前對所有隊員進行了三項測試,得到三項成績之和作為能力值,根據(jù)能力值構建如上規(guī)則的完全二叉樹,再根據(jù)二叉樹對所有隊員進行崗位匹配。程序運行時,讀取所有隊員三項測試成績保存在變量s中,將每位員工的姓名和各項測試成績得分顯示在list1中,單擊“計算”按鈕,對數(shù)據(jù)進行統(tǒng)計分析,求出每位員工能力值,并由此構造二叉樹,結果顯示在列表框 List2中,程序運行界面如圖e所示。
(1)若在圖d中增加兩個新隊員,能力值分別為a(10)=8,a(11)=6則隊員、a(11)=6將被存儲在數(shù)組元素 中。
(2)實現(xiàn)算法的VB程序如下,請在程序橫線處填入合適的代碼。
【考點】對象的屬性、方法和事件;二叉樹的基本操作.
【答案】見試題解答內容
【解答】
【點評】
聲明:本試題解析著作權屬菁優(yōu)網所有,未經書面同意,不得復制發(fā)布。
發(fā)布:2024/4/23 12:26:7組卷:0引用:1難度:0.9
相似題
-
1.運行列表框對象語句:List1.AddItem=“同學們好!“,會顯示:同學們好??;
發(fā)布:2025/1/2 11:30:1組卷:6引用:6難度:0.9 -
2.小張設計了一個“加減運算練習”VB程序.界面如下圖所示.單擊“出題”Command1按鈕顯示兩個運算數(shù)和運算符號,并計數(shù).在文本框Text1中輸入計算結果后單擊“判斷”按鈕Command2,如果計算結果正確,則得分加10分,直至完成10題測試.VB程序如下,但加下橫線處代碼有錯,請改正.
Dim n,s As Integer'n為試題計數(shù)器,s為得分
Dim a,b As Integer'a,b 為兩個運算數(shù)
Dim c As String'c為運算符:“+“表示加法,“-“表示減法
Private Sub Form_Load( )n=0:
s=0
End Sub
Private Sub Command1_Click( ?。鲱}按鈕
Randomize
n=n+1
If n<11Then
Label1.Caption=“No:“+Str(n)
a=Int(Rnd*100)'a,b為運算數(shù),且要求a不小于b
b=Int(Rnd*100)
If a>bThen t=a:a=b:b=t'(1)
If Rnd>0.5Then c=“+“Else b=“-“'(2)
Label5.Caption=Str(a)+c+Str(b)+“=“
Text1.Text=““
Else
Command1.Caption=“完成測試“
End If
End Sub
Private Sub Command2_Click( ?。袛喟粹o
If c=“+“Then
If a+b=Val(Text1.Text) Then s=s+10
Else
If a+b=Val(Text1.Text)Then s=s+10'(3)
End If
Label3.Caption=“得分:“+Str(s)
End Sub.發(fā)布:2025/1/2 9:30:2組卷:6引用:2難度:0.9 -
3.某智能農場啟用了根據(jù)土壤濕度自動控制噴淋裝置進行澆水的信息系統(tǒng),每隔一段時間,系統(tǒng)自動檢測土壤濕度,當土壤濕度低于某個閾值時將自動澆水。小李為統(tǒng)計出某段時間內(不超過100個時間單位)系統(tǒng)自動控制澆水的次數(shù)和該時間段內前后兩次啟動自動澆水系統(tǒng)的最大時間間隔單位,小李進行了數(shù)據(jù)分析,他認為如果某單位時間的土壤濕度比前一單位時間的土壤濕度高并且本單位時間內沒有下雨,則認為啟用了澆水系統(tǒng)。由此他編寫了一個VB程序實現(xiàn)該功能:在文本框Text1中輸入某段時間內的濕度值,在文本框Text2中輸入該段時間內對應的天氣情況,單擊命令按鈕Command1,在文本框Text3中顯示系統(tǒng)自動澆水次數(shù),Text4中顯示前后兩次自動澆水系統(tǒng)啟用的最大時間間隔單位。
(1)在Private Sub Command1_Click( ?。┲?,Command1、Click分別表示
(2)實現(xiàn)上述功能的VB程序如下,請在畫線處填入合適的代碼。
(3)程序中加框處代碼有錯,請改正。發(fā)布:2025/1/2 11:0:1組卷:0引用:1難度:0.3
把好題分享給你的好友吧~~