ASP: QuickSort Algorithm


Previous Topic Previous Next Topic Next
Xoc Software
Training
RVBA Conventions
Maya Calendar Program
Company Information
Tools
ASP.NET and Other Tips
.NET: Debugging Designer Features of a Custom Control in Visual Studio
.NET: Setting the Default Font in a Windows Mobile/Compact Framework Custom Control
.NET Fixing C# XML Comments so they Work in Windows XP SP2
.NET: Getting and Setting the Application Version Number
.NET: Getting the Path of the Executing Assembly
.NET: Retrieving Assembly Attributes
.NET: Setting the RootFolder to Other Values in the FolderBrowserDialog in .NET
.NET: Sizing Columns in a ListView Control in .NET
.NET: Using Remoting in .NET
ASP.NET: Constructing a Graphic on the Fly in ASP.NET
ASP.NET: Controlling Caching in ASP.NET Web Forms
ASP.NET: How to use the FrontPage Server Extensions with ASP.NET
ASP.NET: Seeing What is in the ViewState in ASP.NET Web Forms
ASP.NET: Using Forms Authentication in ASP.NET
ASP.NET: View Trace Information on your ASP.NET Web Pages
ASP: Create XML from an ADO query
ASP: Detect Incomplete Loads
ASP: Including an ASP.NET Web Page In a Classic ASP Web Page
ASP: Process .HTM Files with Scripts and Server Side Includes
ASP: QuickSort Algorithm
ASP: Retrieve all server variables from IIS
ASP: Send Email from Active Server Page
HTML: How to Create a Non-Scrolling Region in HTML
IE: Allowing Only Certain ActiveX Controls to Run in Internet Explorer
IIS: Creating a web site for testing in IIS Server
IIS: Creating Multiple Web Sites within IIS on Windows 2000 and Windows XP Professional
IIS: IIS/Visual InterDev Problems and Fixes
IIS: Redirect a domain such as xoc.net to www.xoc.net
SQL Server: Execute SQL Server Updategram
Web Design: Design for People with Disabilities
Web Design: Keep a Web Page out of the Google Cache
Windows: Get HTTP Header of a Web Page using Telnet
Windows: Testing Domain Names without DNS
Windows: Using Hosts File to Access Web Sites with XP SP2
Windows: Windows XP Command Line Tools
Windows Mobile: Reprogramming the Push-to-Talk Button on the AT&T Tilt
Articles
Miscellaneous
Downloads
Links
Search
Email

Other Xoc managed sites:
http://grr.xoc.net
http://www.986faq.com
http://www.mayainfo.org
https://mayacalendar.xoc.net
http://www.yachtslog.com

VBScript QuickSort example

Sub QuickSort(avarValues, iavarValuesFirst, iavarValuesLast) 
    Dim iavarValuesPivot 
    Dim iavarValuesSwapFirst 
    Dim iavarValuesSwapLast 
    Dim varSwap 
      
    If iavarValuesLast - iavarValuesFirst = 1 Then 
        If avarValues(iavarValuesFirst) > avarValues(iavarValuesLast) Then 
            varSwap = avarValues(iavarValuesFirst) 
            avarValues(iavarValuesFirst) = avarValues(iavarValuesLast) 
            avarValues(iavarValuesLast) = varSwap 
        End If 
    End If 
      
    iavarValuesPivot = avarValues((iavarValuesFirst + iavarValuesLast) \ 2) 
    avarValues((iavarValuesFirst + iavarValuesLast) \ 2) = avarValues(iavarValuesFirst) 
    avarValues(iavarValuesFirst) = iavarValuesPivot 
    iavarValuesSwapFirst = iavarValuesFirst + 1 
    iavarValuesSwapLast = iavarValuesLast 
      
    Do 
        Do While iavarValuesSwapFirst < iavarValuesSwapLast _ 
            And avarValues(iavarValuesSwapFirst) <= iavarValuesPivot 
            iavarValuesSwapFirst = iavarValuesSwapFirst + 1 
        Loop 
        Do While avarValues(iavarValuesSwapLast) > iavarValuesPivot 
            iavarValuesSwapLast = iavarValuesSwapLast - 1 
        Loop 
        If iavarValuesSwapFirst < iavarValuesSwapLast Then 
            varSwap = avarValues(iavarValuesSwapFirst) 
            avarValues(iavarValuesSwapFirst) = avarValues(iavarValuesSwapLast) 
            avarValues(iavarValuesSwapLast) = varSwap 
        End If 
    Loop While iavarValuesSwapFirst < iavarValuesSwapLast 
      
    avarValues(iavarValuesFirst) = avarValues(iavarValuesSwapLast) 
    avarValues(iavarValuesSwapLast) = iavarValuesPivot 
      
    If iavarValuesFirst < (iavarValuesSwapLast - 1) Then 
        Call QuickSort(avarValues, iavarValuesFirst, iavarValuesSwapLast - 1) 
    End If 
    If iavarValuesSwapLast + 1 < iavarValuesLast Then 
        Call QuickSort(avarValues, iavarValuesSwapLast + 1, iavarValuesLast) 
    End If 
End Sub

Top