-
[알고리즘/자바스크립트] 배열 뒤집기 (Reverse Array)Algorithm 2019. 9. 4. 10:25
Reverse Array
주어진 배열을 뒤집어서 출력한다. 다만 추가 메모리 공간을 만들지 않고 공간복잡도를 고려하여 in-place 방식으로 해보기. (물론 reverse()와 같은 메소드는 사용하지 않고 풀어야한다.)
매우 매우 간단한 몸풀기 문제.
배열의 맨 왼쪽 인덱스와 맨 오른쪽 인덱스를 잡아서 값을 교환하고
왼쪽 인덱스는 오른쪽으로 한 칸 이동하고,
오른쪽 인덱스는 왼쪽으로 한 칸 이동한다.
위 과정을 반복하다가 왼쪽 인덱스가 오른쪽 인덱스보다 크거나 같아지면 반복을 종료하고 배열을 리턴한다.
const reverseArray = array => { let left = 0; let right = array.length - 1; while (left < right) { let temp = array[left]; array[left] = array[right]; array[right] = temp; left++; right--; } return array; };
반응형'Algorithm' 카테고리의 다른 글
[알고리즘/자바스크립트] Codility, OddOccurrencesInArray 문제 풀이 (484) 2019.11.29 [알고리즘/자바스크립트] Codility, Binary Gap 문제 풀이 (609) 2019.11.27 [알고리즘/자바스크립트] mix-in 패턴을 이용한 이벤트 함수 만들기 (609) 2019.08.22 [알고리즘/자바스크립트] 트리에서 조건에 맞는 값만 필터하기 (Tree Collect) - Breadth-First Search (609) 2019.08.20 [알고리즘/자바스크립트] 완전 일치 (Deep Equals) (609) 2019.08.15 COMMENT