자기 자신을 호출하는 함수로문제를 더 이상 작게 쪼갤 수 없는 단위로 쪼갠 다음에제일 작은 문제부터 쪼개기 전의 문제까지 차례대로 해결할 때 사용됨언제 주로 사용되는지?주어진 문제를 비슷한 구조의 더 작은 문제로 나눌 수 있는 경우중첩된 반복문이 많거나 중첩 횟수를 예
Big O 표기법 알고리즘의 시간복잡도를 표기하는 방법 Big o 표기법의 필요성 문제를 해결할 때 여러 방법이 있는데 여러가지 코드를 일반적으로 서로 비교하고 성능을 평가하기 위해 필요하다 코드 시간 재기 내장 함수 performance.now(); 함수를 실행하
정렬된 배열에서 특정 값을 찾는 알고리즘으로 배열의 중간을 기준으로 데이터를 탐색하기 때문에반드시 데이터가 정렬된 상태로 존재해야 탐색을 할 수 있습니다중간을 기준으로 탐색 대상을 절반씩 줄여가는 탐색 알고리즘으로 O(logN) 시간복잡도를 가집니다
1단계 : 문제의 이해 1) 나만의 언어로 다시말할 수 있는지? 2) 문제의 input? 3) 문제의 output? 4) input을 통해 output을 결정할 수 있는지?       즉, 문제를 해결할 충분한 정보가 주어졌
숫자를 비교를 하지않는 정렬 알고리즘 숫자 크기에 대한 정보를 자릿수로 인코딩한다는 것을 이용해 정렬
자료구조 > 데이터 접근 및 수정을 효율적으로 가능케하는 자료의 조직, 관리, 저장을 의미 Stack > 데이터를 순서대로 쌓는 자료구조 후입 선출(LIFO) 특징을 가지고있다. 스택 특징 후입선출 데이터 수에 상관없이 무조건 하나씩만 넣거나 뺄 수 있다. 하나의
Tree > 그래프의 여러 구조 중 단방향 그래프의 한 구조로 하나의 뿌리로부터 가지가 사방으로 뻗은 형태가 나무와 닮아있다로 해서 트리 구조라고 부른다. Tree 구조와 특징 루트라는 하나의 꼭짓점 데이터를 시작으로 여러 개의 데이터를 간선으로 연결, 각 데이터를