알고리즘

📚 CS/알고리즘 (JS)

[알고리즘] 버블정렬 (자바스크립트)

데이터를 정렬할 수 있는 방법은 무수히 많고, 각 알고리즘은 장단점을 갖고 있다. 같은 결과값을 갖더라도 결과를 내기까지의 과정이 제각기 다르다. 특정 상황에 유난히 잘 작동하는 정렬 방법이 존재하고, 이를 잘 활용하게 하기 위함 버블 정렬 자바스크립트 내장 정렬 메서드 array.sort() : num1 - num2 가 양수를 반환하면 num2가 앞에, 음수를 반환하면 num1이 앞에 온다. 숫자 뿐 아니라 문자열으 길이를 음수/양수로 구분하여 정렬할수도 있다. function numberCompare(num1,num2){ return num1 - num2; } [ 6, 4, 16,10 ].sort(numberCompare); 개념 현재 항목과 다음 항목을 한 번씩 비교하여 교환. 제일 끝에서부터 차례..

📚 CS/알고리즘 (JS)

[알고리즘] 빅오 표기법과 배열, 객체의 성능 평가 (자바스크립트)

1. 빅오 표기법 1-1. 무수한 알고리즘 해결책에 대한 평가 기준 performance.now()를 통한 시간 차이 측정 컴퓨터의 연산 갯수 측정 1-2. 빅오 시간 복잡도 입력에 따른 연산 시간의 관계성 측정, 다소 추상적인 말이지만 '큰 흐름'에 집중 상수곱, 합의 연산은 단순화 1-3. 빅오 공간 복잡도 입력에 따라 차지하는 메모리의 관계성 측정 (공간 할당) Boolean, Numbers, undefiend, null은 상수 복잡도 O(1) (단순화 가능) String, Array, Object는 선형 복잡도 O(N) 1-4. 로그 지수함수의 역 대부분의 정렬, 탐색 알고리즘과 같이 로그 복잡도를 갖는 알고리즘들이 존재 2. 배열과 오브젝트의 성능 평가 2-1. 자바스크립트 기본 요소들의 성능 ..

황재웅 Jaeppetto
'알고리즘' 태그의 글 목록