﻿ Java - Given a string and an offset, rotate string by offset

# Java: Given a string and an offset, rotate string by offset

## Java Basic: Exercise-114 with Solution

Write a Java program that rotates a string by an offset (rotate from left to right.

Pictorial Presentation: Sample Solution:

Java Code:

``````import java.util.*;

public class Example114 {
public static void main(String[] arg) {
// Input string
String str = "abcdef";

// Convert the string to a character array
char[] A = str.toCharArray();

// Define the offset for rotation
int offset = 3;

// Calculate the length of the character array
int len = A.length;

// Ensure that the offset is within the bounds of the array
offset %= len;

// Reverse the first portion of the array
reverse(A, 0, len - offset - 1);

// Reverse the second portion of the array
reverse(A, len - offset, len - 1);

// Reverse the entire array to complete the rotation
reverse(A, 0, len - 1);

// Print the rotated array
System.out.println("\n" + Arrays.toString(A));
}

// Helper function to reverse a portion of a character array
private static void reverse(char[] str, int start, int end) {
while (start < end) {
char temp = str[start];
str[start] = str[end];
str[end] = temp;
start++;
end--;
}
}
}
```
```

Sample Output:

```[d, e, f, a, b, c]
```

Flowchart: Java Code Editor:

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.

﻿