1 public static string Reverse(this String str) 2 { 3 char[] array = str.ToCharArray(); 4 int n = array.Length - 1; 5 for (int i = (n - 1) >> 1; i >= 0; i--) 6 { 7 int j = n - i; 8 char temp = array[i]; 9 array[i] = array[j]; 10 array[j] = temp; 11 } 12 return new string(array); 13 }