From c96459129276af4ef17e1ce7f2ec101f6773fa3b Mon Sep 17 00:00:00 2001 From: manish181 <56684492+manish181@users.noreply.github.com> Date: Thu, 17 Oct 2019 19:46:28 +0530 Subject: [PATCH] Create Sel_Sort.cpp --- Sel_Sort.cpp | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 Sel_Sort.cpp diff --git a/Sel_Sort.cpp b/Sel_Sort.cpp new file mode 100644 index 0000000..d808f52 --- /dev/null +++ b/Sel_Sort.cpp @@ -0,0 +1,50 @@ +// C++ program for implementation of selection sort +#include +using namespace std; + +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++) + cout << arr[i] << " "; + cout << endl; +} + +// 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); + cout << "Sorted array: \n"; + printArray(arr, n); + return 0; +} + +// This is code is contributed by rathbhupendra