diff --git a/C/Insertion Sort Algorithm b/C/Insertion Sort Algorithm new file mode 100644 index 0000000..0d7bc8f --- /dev/null +++ b/C/Insertion Sort Algorithm @@ -0,0 +1,36 @@ + + + // Insertion sort in C + #include + void printArray(int array[], int size) + { + for (int i = 0; i < size; i++) + { + printf("%d ", array[i]); + } + printf("\n"); + } + void insertionSort(int array[], int size) + { + for (int step = 1; step < size; step++) + { + int key = array[step]; + int j = step - 1; + while (key < array[j] && j >= 0) + { + // For descending order, change keyarray[j]. + array[j + 1] = array[j]; + --j; + } + array[j + 1] = key; + } + } + int main() + { + int data[] = {9, 5, 1, 4, 3}; + int size = sizeof(data) / sizeof(data[0]); + insertionSort(data, size); + printf("Sorted array in ascending order:\n"); + printArray(data, size); + } +