dcsimg
Login | Register   
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX

By submitting your information, you agree that devx.com may send you DevX offers via email, phone and text message, as well as email offers about other products and services that DevX believes may be of interest to you. DevX will process your information in accordance with the Quinstreet Privacy Policy.


Tip of the Day
Language: Visual Basic
Expertise: Intermediate
Dec 4, 2000

WEBINAR:

On-Demand

Application Security Testing: An Integral Part of DevOps


Sort The Contents of an Array

 
Private Sub BubbleSort(varArray As Variant, bAscending As Boolean)
    'Option Base 0 is assumed    
    Dim HoldEntry As Integer
    Dim SwapOccurred As Boolean
    Dim iItteration As Integer
    Dim i As Integer
 
    SwapOccurred = True
    iItteration = 1
    
    Do Until Not SwapOccurred
        SwapOccurred = False
        For i = LBound(varArray) To UBound(varArray) - iItteration Step 1
            If bAscending Then
                If varArray(i) > varArray(i + 1) Then
                    HoldEntry = varArray(i)
                    varArray(i) = varArray(i + 1)
                    varArray(i + 1) = HoldEntry
                    SwapOccurred = True
                End If
            Else
                If varArray(i + 1) > varArray(i) Then
                    HoldEntry = varArray(i)
                    varArray(i) = varArray(i + 1)
                    varArray(i + 1) = HoldEntry
                    SwapOccurred = True
                End If
            End If
        Next i
        iItteration = iItteration + 1   'reduce iteration each time as greatest/lowest
                                        'item already at end/start of array
    Loop
    
End Sub
 
'to call ....
Private Sub cmdBubbleSort_Click()
 
    Dim lArray(999) As Long, iCnt As Integer
    
    'populate array with dummy data
    For iCnt = LBound(lArray) To UBound(lArray) Step 1
        lArray(iCnt) = Int((1000 * Rnd) + 1)
    Next iCnt
 
    Call BubbleSort(lArray, True)
    
    'display result
    For iCnt = LBound(lArray) To UBound(lArray) Step 1
        lstResult.AddItem lArray(iCnt)
    Next iCnt
 
End Sub
Alex Whyte
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Sitemap
×
We have made updates to our Privacy Policy to reflect the implementation of the General Data Protection Regulation.
Thanks for your registration, follow us on our social networks to keep up-to-date