Merge pull request #91 from keshav-space/master
Added shorting algorithm in c++ language
This commit is contained in:
commit
91826a79fb
47
c-cpp/11_sorts/sorts.cpp
Normal file
47
c-cpp/11_sorts/sorts.cpp
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
// C program for implementation of selection sort
|
||||||
|
#include <stdio.h>
|
||||||
|
|
||||||
|
void swap(int *xp, int *yp)
|
||||||
|
{
|
||||||
|
int temp = *xp;
|
||||||
|
*xp = *yp;
|
||||||
|
*yp = temp;
|
||||||
|
}
|
||||||
|
|
||||||
|
void selectionSort(int arr[], int n)
|
||||||
|
{
|
||||||
|
int i, j, min_idx;
|
||||||
|
|
||||||
|
// One by one move boundary of unsorted subarray
|
||||||
|
for (i = 0; i < n-1; i++)
|
||||||
|
{
|
||||||
|
// Find the minimum element in unsorted array
|
||||||
|
min_idx = i;
|
||||||
|
for (j = i+1; j < n; j++)
|
||||||
|
if (arr[j] < arr[min_idx])
|
||||||
|
min_idx = j;
|
||||||
|
|
||||||
|
// Swap the found minimum element with the first element
|
||||||
|
swap(&arr[min_idx], &arr[i]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Function to print an array */
|
||||||
|
void printArray(int arr[], int size)
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
for (i=0; i < size; i++)
|
||||||
|
printf("%d ", arr[i]);
|
||||||
|
printf("\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
// Driver program to test above functions
|
||||||
|
int main()
|
||||||
|
{
|
||||||
|
int arr[] = {64, 25, 12, 22, 11};
|
||||||
|
int n = sizeof(arr)/sizeof(arr[0]);
|
||||||
|
selectionSort(arr, n);
|
||||||
|
printf("Sorted array: \n");
|
||||||
|
printArray(arr, n);
|
||||||
|
return 0;
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user