You're out of free questions.

Upgrade now

Write a method that takes an array of characters and reverses the letters in place.

Why an array of characters instead of a string?

The goal of this question is to practice manipulating strings in place. Since we're modifying the input, we need a mutable type like an array, instead of C#'s immutable strings.

In general, an in-place algorithm will require swapping elements.

We swap the first and last characters, then the second and second-to-last characters, and so on until we reach the middle.

public static void Reverse(char[] arrayOfChars) { int leftIndex = 0; int rightIndex = arrayOfChars.Length - 1; while (leftIndex < rightIndex) { // Swap characters char temp = arrayOfChars[leftIndex]; arrayOfChars[leftIndex] = arrayOfChars[rightIndex]; arrayOfChars[rightIndex] = temp; // Move towards middle leftIndex++; rightIndex--; } }

time and space.

Wanna review this one again later? Or do you feel like you got it all?

Mark as done Pin for review later

Reset editor

Powered by qualified.io

. . .