TheAlgorithms/C++ 1.0.0
All the algorithms implemented in C++
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:

Go to the source code of this file.

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.
 
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.
 
void tests::test1 ()
 A Test to check an simple case.
 
void tests::test2 ()
 A Test to check an empty vector.
 
void tests::test3 ()
 A Test to check an invalid shift value.
 
void tests::test4 ()
 A Test to check a very large input.
 
void tests::test5 ()
 A Test to check a shift of zero.
 
static void test ()
 Function to test the correctness of shift_right() function.
 
int main ()
 main function
 

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

Definition in file array_right_rotation.cpp.

Function Documentation

◆ main()

int main ( void )

main function

Returns
0 on exit

Definition at line 172 of file array_right_rotation.cpp.

172 {
173 test(); // run self-test implementations
174 return 0;
175}
static void test()
Function to test the correctness of shift_right() function.

◆ test()

static void test ( )
static

Function to test the correctness of shift_right() function.

Returns
void

Definition at line 160 of file array_right_rotation.cpp.

160 {
161 tests::test1();
162 tests::test2();
163 tests::test3();
164 tests::test4();
165 tests::test5();
166}
void test1()
A Test to check an simple case.
void test4()
A Test to check a very large input.
void test3()
A Test to check an invalid shift value.
void test2()
A Test to check an empty vector.
void test5()
A Test to check a shift of zero.