计算机等级考试二级VB常用算法(7):排序

计算机等级考试二级VB常用算法(7):排序,第1张

计算机等级考试二级VB常用算法(7):排序,第2张

1.算法表明,数组中元素的插入和删除一般是以固定的顺序插入或删除数组中的一个元素,使插入或删除操作后的数组仍然有序。
基本思路:首先找到插入位置或者要删除的元素。
1)插入

代码如下:
private子命令1 _ click()
dim a(10)as integer
dim I as integer,k as integer
for i = 0to9 '生成数组
a (i) = i * 3。
next I
print
print " insert 14 "
For k = 0到9 '找到insert 14在数组中的位置
if 14 < a (k)则exit for
next k
For i = 9到k Step -1 '从最后一个元素开始一个一个向后移动, 为位置腾出空间
A(I+1)= A(I)
Next I
A(k)= 14 '插入数字14
For I = 0到10[
Next I
print
end sub
2)1 4 7 10 13 16 19 22 25 28

k删除代码如下:
Dim A() 接下来我
redim preserve a(1到n-1) [/br下面这个程序的作用是将文件后半部分的奇数按顺序插入到文件前半部分的适当位置,新的顺序是:1 2 3 4 5 6 7 8 9 10。 (实现方法:第一次调整的顺序是:1 2 4 6 8 10 3 5 7 9;第二个调整的顺序是:1 2 3 4 6 8 10 5 7 9)。
Option Explict
Private Sub Form _ Click()
Dim A(10)As Integer,i As Integer,J As Integer
Open " c:\ data 4 . txt " For Input As # 12
Do(1)
J = J+1
Input # 12,A(J)
Loop
Call Insert(A)
For I = 1到10

Next I
Print
Close # 12
End Sub
Private Sub Insert(A()为整数)
Dim i为整数,Putp为整数,J为整数
Dim Getp为整数,N为整数, Tem As Integer
N = UBound(A)/2
Putp = 1
Getp = N+1
For I = 1 To N
Tem = A(Getp)
For J = Getp To Putp+1 Step-1
(2)
NEXT J
A(PUTP)= Tem
Getp = Getp+1
PUTP =(3)[] 删除相同的数字是通过在数组中向前顺序移动数组元素后面的元素来替换前面元素的值来实现的。数组中每个元素的值都是从文件data . txt
Option Explict
Option Base 1
Private Sub Form _ Click()
Dim I As Integer,J As Integer,K As Integer
Dim A()As Integer,T As Integer,M As Integer
Open " c:\ my documents \ 2000 test \ data . txt " For Input As # 1
Do While(1)
I = I A(I)
循环
M = 1:T =(2)
Do While M I = M+1
Do While I If A(I)= A(M)Then
For J = 1 To(3)
A(J)= A(J+1)
Next J
T = T-1
Else
I =(4)
End If
Next I
Print
End Sub

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » 计算机等级考试二级VB常用算法(7):排序

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情