Microsoft Interview Question
1,274 Interview Reviews |
Back to all Microsoft Interview Questions & Reviews
Interview questions and reviews posted anonymously by interview candidates
Interview Question for Software Development Engineer In Test (SDET) II at Microsoft:
Write a method to rotate an array at n without using O(1) space. How would you test this method
See more for this Microsoft Software Development Engineer In Test (SDET) II Interview
Helpful Question?
Yes |
No
Inappropriate?



2 of 2 people found this helpful
by Valentino:
- Reverse the array from position 0 to n and n+1 to array length
- When doing the reverse (swapping elements) it can be done with no extra space using XOR
public string RotateOnIndex(string word, int index)
{
if (String.IsNullOrWhiteSpace(word))
return word;
if (index < 0 || index > (word.Length - 1))
return String.Empty;
char[] letters = word.ToCharArray();
Reverse(letters, 0, letters.Length - 1);
Reverse(letters, index, letters.Length - 1);
Reverse(letters, 0, index - 1);
return new String(letters);
}
private void Reverse(char[] letters, int start, int end)
{
while (start < end)
{
letters[start] ^= letters[end];
letters[end] ^= letters[start];
letters[start] ^= letters[end];
start++;
end--;
}
}