由數(shù)組a生成數(shù)組b的方法描述如下:
1)將數(shù)組a中的n個元素依次分割出若干個數(shù)據(jù)塊,每個數(shù)據(jù)塊有m×m個元素,m最大值為8,最小值為2。分割時,按盡可能大的數(shù)據(jù)塊進行分割;
2)對每個分割出的數(shù)據(jù)塊用“方陣轉(zhuǎn)換法”進行轉(zhuǎn)換,每次轉(zhuǎn)換后得到的數(shù)據(jù)塊依次存儲在數(shù)據(jù)b中;
3)數(shù)組a分割后的剩余元素(個數(shù)小于4),直接依序存儲到數(shù)組b中。
例如n=140時,可依次分割出3個數(shù)據(jù)塊,元素的個數(shù)分別為64(8×8)、64(8×8)、9(3×3),剩余元素為3個。
“方陣轉(zhuǎn)換法”過程如下:將數(shù)據(jù)塊中m×m個元素按行序排列成一個數(shù)字方陣,從該數(shù)字方陣中按列序得到轉(zhuǎn)換后元素的次序。以3×3數(shù)據(jù)塊為例,轉(zhuǎn)換過程如下圖所示:
請回答下列問題:
小李基于冒泡排序算法編寫了一個VB程序,功能如下:在文本框Text1中顯示排序前的數(shù)據(jù),單擊“排序”按鈕Command1,在文本框Text2中顯示剔除重復(fù)數(shù)據(jù)后的升序排序結(jié)果。程序運行界面如下圖所示。
實現(xiàn)上述功能的VB程序如下,但加框處代碼有錯,請改正。
依次為:
①a(j)〈a(j-1)
②a(j)=a(bottom)