diff --git a/array_rotation.c b/array_rotation.c new file mode 100644 index 0000000..a4c3ba1 --- /dev/null +++ b/array_rotation.c @@ -0,0 +1,37 @@ +/*Function to left Rotate arr[] of size n by 1*/ +void leftRotatebyOne(int arr[], int n); + +/*Function to left rotate arr[] of size n by d*/ +void leftRotate(int arr[], int d, int n) +{ +int i; +for (i = 0; i < d; i++) + leftRotatebyOne(arr, n); +} + +void leftRotatebyOne(int arr[], int n) +{ +int i, temp; +temp = arr[0]; +for (i = 0; i < n-1; i++) + arr[i] = arr[i+1]; +arr[i] = temp; +} + +/* utility function to print an array */ +void printArray(int arr[], int size) +{ +int i; +for(i = 0; i < size; i++) + printf("%d ", arr[i]); +} + +/* Driver program to test above functions */ +int main() +{ +int arr[] = {1, 2, 3, 4, 5, 6, 7}; +leftRotate(arr, 2, 7); +printArray(arr, 7); +getchar(); +return 0; +} diff --git a/c_array_program.c b/c_array_program.c new file mode 100644 index 0000000..208f4d9 --- /dev/null +++ b/c_array_program.c @@ -0,0 +1,23 @@ +#include + + void printArray(int* arr, int n) +{ + int i; + + printf("Array: "); + for (i = 0; i < n; i++) { + printf("%d ", arr[i]); + } + printf("\n"); +} + +// Driver program +int main() +{ + int arr[] = { 2, -1, 5, 6, 0, -3 }; + int n = sizeof(arr) / sizeof(arr[0]); + + printArray(arr, n); + return 0; +} +