# Algorithms_in_C++: operations_on_datastructures/array_right_rotation.cpp File Reference

Loading...
Searching...
No Matches
array_right_rotation.cpp File Reference

Implementation for the Array right Rotation algorithm. More...

`#include <cassert>`
`#include <iostream>`
`#include <vector>`
Include dependency graph for array_right_rotation.cpp:

## Namespaces

namespace | operations_on_datastructures
| for std::vector
namespace | tests
| Testcases to check Union of Two Arrays.

## Functions

void | operations_on_datastructures::print (const std::vector< int32_t > &array)
| Prints the values of a vector sequentially, ending with a newline character. More...
std::vector< int32_t > | operations_on_datastructures::shift_right (const std::vector< int32_t > &array, size_t shift)
| Shifts the given vector to the right by the shift amount and returns a new vector with the result. The original vector is not mutated. More...
void | tests::test1 ()
| A Test to check an simple case. More...
void | tests::test2 ()
| A Test to check an empty vector. More...
void | tests::test3 ()
| A Test to check an invalid shift value. More...
void | tests::test4 ()
| A Test to check a very large input. More...
void | tests::test5 ()
| A Test to check a shift of zero. More...
static void | test ()
| Function to test the correctness of shift_right() function. More...
int | main ()
| main function More...

## Detailed Description

Implementation for the Array right Rotation algorithm.

Shifting an array to the right involves moving each element of the array so that it occupies a position of a certain shift value after its current one. This implementation uses a result vector and does not mutate the input.

See also
  array_left_rotation.cpp

Author
  Alvin

## Function Documentation

## main()

int main | ( | void |  | ) |

main function

Returns
  0 on exit

{
test(); // run self-test implementations
return 0;
}
test
static void test()
Function to test the correctness of shift_right() function.
Definition: array_right_rotation.cpp:160
Here is the call graph for this function:

## test()

static void test | ( |  | ) |

static

Function to test the correctness of shift_right() function.

Returns
  void

{
tests::test1();
tests::test2();
tests::test3();
tests::test4();
tests::test5();
}
tests::test1
void test1()
A Test to check an simple case.
Definition: array_left_rotation.cpp:75
tests::test4
void test4()
A Test to check a very large input.
Definition: array_left_rotation.cpp:120
tests::test3
void test3()
A Test to check an invalid shift value.
Definition: array_left_rotation.cpp:105
tests::test2
void test2()
A Test to check an empty vector.
Definition: array_left_rotation.cpp:90
tests::test5
void test5()
A Test to check a shift of zero.
Definition: array_left_rotation.cpp:143
Here is the call graph for this function: