我想比较一个一维数组内是否有重复数据!
如:
dim intNum(10) as Integer
intNum(0)=1
intNum(1)=2
intNum(2)=3
intNum(3)=4
intNum(4)=1
intNum(5)=5
intNum(6)=2
intNum(7)=7
intNum(8)=2
intNum(9)=8
如何判断这个数组里有重复数据!!急!!!!!!!!!!!!!!
在线等!!
如:
dim intNum(10) as Integer
intNum(0)=1
intNum(1)=2
intNum(2)=3
intNum(3)=4
intNum(4)=1
intNum(5)=5
intNum(6)=2
intNum(7)=7
intNum(8)=2
intNum(9)=8
如何判断这个数组里有重复数据!!急!!!!!!!!!!!!!!
在线等!!
for i =0 to 9
for j=0 to 9
if intNum(i)=intNum(j) and i<>j then
debug.print intNum(i)
end if
next j
next i
for j=i+1 to 9
if intNum(i)=intNum(j) then
msgbox "have"
Dim I As Integer,J As Integer
For I = 0 To Ubound(intNum) -1
For J=I+1 To Ubound(intNum)
If intNum(I)=intNum(J) Then
blnIsExists = True
Exit For
End If
Next J
If blnIsExists Then Exit For
Next I
If blnIsExists Then MsgBox "数据重复"
Dim intNum(10) As Integer
intNum(0) = 1
intNum(1) = 2
intNum(2) = 3
intNum(3) = 4
intNum(4) = 1
intNum(5) = 5
intNum(6) = 2
intNum(7) = 7
intNum(8) = 2
intNum(9) = 8
MsgBox HasRepeat(intNum)
End Sub'判断是否有重复
'需要点击菜单:工程->引用->Microsoft Scripting Runtime
Public Function HasRepeat(ByRef arr() As Integer) As Boolean
Dim dict As Dictionary
Set dict = New Dictionary
Dim i As Variant
For Each i In arr
If dict.Exists(i) Then
HasRepeat = True
Exit Function
Else
dict.Add i, 0
End If
Next
HasRepeat = False
End Function