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