排序、查找代碼匯總參考_第1頁
排序、查找代碼匯總參考_第2頁
排序、查找代碼匯總參考_第3頁
排序、查找代碼匯總參考_第4頁
排序、查找代碼匯總參考_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、Option ExplicitConst n = 10Dim a(1 To 10) Aseger, i Aseger, keyAseger生成 10 個(gè) 1-100 之間的隨機(jī)整數(shù)Private SubList1.Clear For i = 1 To nd1_Click()a(i) =(Rnd() * 100 + 1)List1.AddItem a(i)Next i End SubRem 排序算法冒泡排序升序輸出,從后往前比較,F(xiàn)or 語句實(shí)現(xiàn)Private SubDim j Asd2_Click()egereger, t AsFor i = 1 To n - 1For j = n To i

2、+ 1 Step -1If a(j) = 1j = 1Do While j = iIf a(j) a(j) Then k = jNext jIf i k Thent = a(i): a(i) = a(k): a(k) = tEnd If Next iList4.ClearFor i = 1 To nList4.AddItem a(i) Next iEnd Sub選擇排序升序輸出,從前往后比較,Do 語句實(shí)現(xiàn)Private SubDim j As i = 1d5_Click()eger, k Aseger, t AsegerDo While i = n - 1k = i: j = i + 1 D

3、o While j = nIf a(k) a(j) Then k = j j = j + 1LoopIf i k Thent = a(i): a(i) = a(k): a(k) = t End Ifi = i + 1LoopList5.ClearFor i = 1 To nList5.AddItem a(i) Next iEnd SubRem 查找算法順序查找,原始數(shù)據(jù)可以無序;For 語句實(shí)現(xiàn)Private SubDim k Asd7_Click()eger, nc Asegerkey = Val(Text1.Text)k = 0For i = 1 To nnc = nc + 1If a(i

4、) = key Then k = i: Exit For Next iIf k 0 ThenLabel3.Caption = 數(shù)據(jù)在 a( + Str(k) + )元素中ElseLabel3.Caption = 未找到數(shù)據(jù) End IfLabel4.Caption = Str(nc)End Sub順序查找,原始數(shù)據(jù)可以無序;Do 語句實(shí)現(xiàn)Private SubDim f As i = 0f = Falsed8_Click()變量 f 標(biāo)志是否已經(jīng)找到查找鍵Do While i n And f = Falsei = i + 1If a(i) = key Then f = TrueLoopIf f

5、 = True ThenLabel5.Caption = 數(shù)據(jù)在 a( + Str(i) + )元素中ElseLabel5.Caption = 未找到數(shù)據(jù) End IfLabel6.Caption = Str(i)End Sub對分查找(升序條件下查找,Exit Do 語句退出循環(huán))Private Subd9_Click()Dim j Aseger, m Aseger, nc Asi = 1: j = nDo While i = jm = (i + j) 2 nc = nc + 1If a(m) = key ThenegerLabel7.Caption = 在 a( + Str(m) + )中

6、 Exit DoElseIf key a(m) Then j = m - 1Elsei = m + 1 End IfLoopIf a(m) key Then Label7.Caption = 找不到! Label8.Caption = Str(nc)End Sub對分查找(降序條件下查找,Exit Sub 語句退出循環(huán))Private Subd10_Click()Dim j Aseger, nc Aseger, m Asi = 1: j = nDo While i a(m) Then j = m - 1Elsei = m + 1 End IfLoopLabel9.Caption = 找不到! Label10.Caption = Str(nc)End Sub對分查找(降序條件下查找,用變量 f 標(biāo)志是否已經(jīng)找到查找鍵)Private SubDim f Asi = 1: j = nd11_Click(), j Aseger, m Aseger, nc Asegerf = False變量 f 標(biāo)志是否已經(jīng)找到查找鍵Do While i a(m) Then j = m - 1Elsei = m + 1 End IfLoopIf a(m) key Then Label11.Caption = 找不到!Label12.Caption = Str(n

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論