
하지만 난 아직 reverse를 잘 몰라서 reverse 없이 풀어보고 싶었단말이지..
// reverse를 사용하지 않는 법
// 0....n까지의 인덱스가 있을 때
// 0을 n으로 바꾸려면 + n
// 1를 n-1으로 바꾸려면 1 + n-1-1 --> n-2
// 2을 n-2로 바꾸려면 3 + (n-2-2) --> n-4
// 3를 n-3으로 바꾸려면 4 + (n-3-3) --> n-6
// ...
// n-3을 3로 바꾸려면 n-3 + (3 - n + 3) --> -n+6
// n-2를 2으로 바꾸려면 n-2 + (2 - n + 2) --> -n+4
// n-1을 1로 바꾸려면 n-1 + (1 - n + 1) --> -n+2
// n을 0로 바꾸려면 n + (- n)
// ==> 때려쳐
for(시작위치; 횟수; 어떻게 변할건지)
그럼 항상 쓰던
for (i=0;i<arr.length;i++ 에 +대신 -를 사용하면 되지 않나?
시작위치는 끝점 : i=arr.length-1
i가 0이 되기 전까지 (음수가 되지 않게) : i<=0
i를 1씩 감소시켜준다 : i--
function solution(my_string) {
let reverseStr = '';
for (i=my_string.length-1;i>=0;i--){
reverseStr += my_string[i]
}
return reverseStr;
}
생각보다 이미 알고 있는 것에서 응용할 수 있는게 많다.
앞으로는 모른다고 포기하거나 당황하지 않고 알고있는 것에서 최대한 활용해보아야겠다.