ADVERTISEMENT
ADVERTISEMENT

Ruby program to sort an array in ascending order using quick sort

Ruby Example: Write a program to sort an array in ascending order using quick sort.
Submitted by Nidhi, on January 21, 2022

Problem Solution:

In this program, we will create an array of integers and then we will sort the created array in ascending order using quicksort.

Program/Source Code:

The source code to sort an array in ascending order using quicksort is given below. The given program is compiled and executed successfully.

# Ruby program to sort an array in ascending order 
# using Quick Sort

def QuickSort(arr, first, last)
    pivot= 0;
    temp = 0;
    i    = 0;
    j    = 0;
        
    if(first < last)
            pivot = first;
            i = first;
            j = last;
            
            while(i<j)
                while(arr[i]<=arr[pivot] && i<last)
                    i=i + 1;
                end
                while (arr[j] > arr[pivot])
                    j = j - 1;
                end
                if(i < j)
                    temp   = arr[i];
                    arr[i] = arr[j];
                    arr[j] = temp;
                end
            end
            temp = arr[pivot];
            arr[pivot] = arr[j];
            arr[j] = temp;
            QuickSort(arr, first, j - 1);
            QuickSort(arr, j + 1, last);
    end
end

arr = [12,39,49,87,68];

QuickSort(arr,0,4);

i=0;
print "Sorted Array: \n";
while(i<5)
    print arr[i]," ";
    i=i+1;
end

Output:

Sorted Array: 
12 39 49 68 87 

Explanation:

In the above program, we defined a method QuickSort() to sort an array in ascending order. And, we use recursion to use apply the quick sort process effectively. Using the QuickSort() method, we divide the given array into small sub-arrays. Then we sort sub-arrays recursively.

Ruby Arrays Programs »


ADVERTISEMENT
ADVERTISEMENT


Comments and Discussions!



ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT

Languages: » C » C++ » C++ STL » Java » Data Structure » C#.Net » Android » Kotlin » SQL
Web Technologies: » PHP » Python » JavaScript » CSS » Ajax » Node.js » Web programming/HTML
Solved programs: » C » C++ » DS » Java » C#
Aptitude que. & ans.: » C » C++ » Java » DBMS
Interview que. & ans.: » C » Embedded C » Java » SEO » HR
CS Subjects: » CS Basics » O.S. » Networks » DBMS » Embedded Systems » Cloud Computing
» Machine learning » CS Organizations » Linux » DOS
More: » Articles » Puzzles » News/Updates

© https://www.includehelp.com some rights reserved.