4.13.2020

A Quick Guide To Selection Sorting



In this Article I'll tell you about Selection Sort
Selection sort is that type of sorting in which smallest element of a list is searched and then this number is swapped with the first element of the list and then second smallest element is searched in the list and is swapped with the second element of the list and so on i,e this "thingy" thing continues on till n-1 times (where 'n' is the number of terms).
COMPLEXITY:-
Complexity of Selection sort is O(n^2) in best case as well as in worst case.

Well selection sort is not a good sorting algorithm which you can see even from the complexity of selection sort because selection sort performs same number of comparisons even in the best case as in the worst case. Which makes it very slow.
Pseudo-code:-
sort(Arr)
for i = 0 to n-1
smallest = location of smallest number from Arr[i] to Arr[n-1]
swap Arr[i] with Arr[smallest]

/*C Program: Implementation of Selection Sort*/
#include<stdio.h>
void swap(int a[], int i, int j){
    int tmp = a[i];
    a[i] = a[j];
    a[j] = tmp;
}
void selectionSort(int a[], int l, int h){
   for(int i=l; i<h; i++){
     int small  = i;
     for(int j=i+1; j<=h; j++){
       if(a[j] < a[i]) small = j;
     }
     swap(a,i,small);
   }
}
int main(void) {
   int arr[10], n;
   printf("Enter Size of Array: ");
   scanf("%d", &n);
   printf("Enter %d elements:\n", n);
   for(int i=0; i<n; i++) scanf("%d", &arr[i]);
   selectionSort(arr, 0, n-1);
   printf("Sorted Array is as:\n");
   for(int i=0; i<n; i++) printf("%d ", arr[i]);
   printf("\n");
   return 0;
}
Related articles

  1. Best Pentesting Tools 2018
  2. Pentest Automation Tools
  3. Hacker Tools Mac
  4. Pentest Tools Android
  5. Pentest Tools Alternative
  6. Hacking Tools Usb
  7. Hacking Tools Usb
  8. Hack Tools For Pc
  9. Pentest Tools Bluekeep
  10. Tools 4 Hack
  11. Black Hat Hacker Tools
  12. Pentest Tools List
  13. Pentest Tools Free
  14. Hacking Tools
  15. Hacking Apps
  16. Best Pentesting Tools 2018
  17. Pentest Tools Apk
  18. Hacker Tools For Windows
  19. Hacking Tools Mac
  20. Hacker Tools 2019
  21. Hack Tools 2019
  22. Hacker Tools Free