假如我们1{J数组表示上述大根堆:
现有一算法把一个无序数组改造成大根堆。例如:我们在上图的大根堆中再增加一个值为8的新元素,如下图所示。
数组存储为:
具体操作方法如下:
第一步:因为a(10)大于它的双亲结点a(5),故需交换a(10)和a(5)的值;
数组存储为:
第二步:因为a(5)大于它的双亲结点a(2),故需交换a(5)和a(2)(t)值;
数组存储为:
第3步:因为a(2)不大于它的双亲结点a(1),故无需做交换操作。此时新元素己经放到了正确的位置,新的大根堆构造完成,上移行动结束。
(1)若在第16题图中增加值为4的新元素,则元素4将被存储在数组元素_________中。
(2)小段为此编制一VB程序:在文本框Tcxt1中输入结点个数n,单击命令按钮Command1,随机产生n个[1,99]的整数作为结点值,并由此构造大根堆,结果显示在列表框List1中,程序运行界面如图所示。
实现上述功能的程序代码如下。请在划线处填入合适的代码。
①_________________
②__________________
③__________________
同类型试题
y = sin x, x∈R, y∈[–1,1],周期为2π,函数图像以 x = (π/2) + kπ 为对称轴
y = arcsin x, x∈[–1,1], y∈[–π/2,π/2]
sin x = 0 ←→ arcsin x = 0
sin x = 1/2 ←→ arcsin x = π/6
sin x = √2/2 ←→ arcsin x = π/4
sin x = 1 ←→ arcsin x = π/2
y = sin x, x∈R, y∈[–1,1],周期为2π,函数图像以 x = (π/2) + kπ 为对称轴
y = arcsin x, x∈[–1,1], y∈[–π/2,π/2]
sin x = 0 ←→ arcsin x = 0
sin x = 1/2 ←→ arcsin x = π/6
sin x = √2/2 ←→ arcsin x = π/4
sin x = 1 ←→ arcsin x = π/2