class Solution {
public void reverseString(char[] s) {
for (int i = 0; i < s.length / 2; i++) {
char temp = s[i];
s[i] = s[s.length - 1 - i];
s[s.length - 1 - i] = temp;
}
}
}
없음. 완벽한 풀이. 떙큐
class Solution {
public void reverseString(char[] s) {
int left = 0;
int right = s.length - 1;
while (left < right) {
char temp = s[left];
s[left] = s[right];
s[right] = temp;
left++;
right--;
}
}
}
class Solution {
public void reverseString(char[] s) {
for (int i = 0; i < s.length / 2; i++) {
int j = s.length - 1 - i;
s[i] ^= s[j];
s[j] ^= s[i];
s[i] ^= s[j];
}
}
}
| 방법 | 시간 | 공간 |
|---|---|---|
| 내 코드 | O(n) | O(1) |
| Two Pointer | O(n) | O(1) |
| XOR | O(n) | O(1) |
In-place Reverse = Two Pointer Swap
s.length / 2만큼만 순회#LeetCode #TwoPointer #String #Easy #InPlace