자료구조 기초 자료구조의 목적 자료를 더 효율적으로 저장, 관리하기 위해 사용함 잘 선택된 자료구조는 실행시간을 단축함 자료구조의 구성 Insert : 데이터를 저장 하는 방법 Search : 데이터를 탐색하는 방법 Delete : 데이터를 삭제하는 방법 자료구조의
tree에 대해 정의하기 전에 자료구조에 대해 잠깐 정의하고 가자 선형자료구조 자료(노드)들이 선의 형태로 나열되어 있는 구조를 가짐 연결리스트, 스택, 큐 비선형자료구조 자료(노드)구조가 선의 형태로 나열되지 않는 구조 트리, 그래프 Tree 트리는 비선형자료구조
모든 노드가 아래의 조건을 만족하는 이진 트리모든 data는 서로 다른 값을 갖는다.왼쪽 자식 노드 <= 부모 <= 오른쪽 자식 노드root의 data와 탐색 대상 data를 비교한다 1의 결과에 따라 아래 작업 중 하나를 수행한다.root.data = da
완전탐색 모든 경우의 수를 고려하는 탐색 알고리즘 조합 순열 부분집합 브루트 포스 백 트래킹 등 1. 조합 서로 다른 경우 n개 중에 r개를 선택하는 경우의 수를 의미 한다. 조합은 순서가 없으므로 순서가 다른 조합도 하나의 조합으로 취급한다. 중복이 불가능하다.
문자열 문자열에서 특정문자 찾기 1. 특정문자 포함 확인 String.indexOf() 문자열에서 특정문자를 포함하는 첫 번째 위치를 반환 문자열에 특정문자가 없다면 -1을 반환 > String.indexOf( 찾으려는 문자, 검색 시작위치); 2. 특
배열 두배열 비교 정렬 후 비교 sort 교집합 찾기 filter include Array.prototype.filter() : 주어진 함수의 테스트를 통과하는 모든 요소를 모아 새로운 배열로 반환 Array.prototype.includes() : 배열이 특정
이차원 배열 이차원 배열의 곱셈 이차원 행렬의 곱셈공식 행렬의 결과값 선행렬 : NxM 후행렬 : MxL 선행렬의 열과 후행렬의 행의 갯수가 같아야 곱셈가능 (M == M) 곱셈의 결과물은 선행렬의 행과 후행렬의 열로 맞춰짐 (NxL) 직관적 풀이 메소드 체이닝
객체 객체의 키와 값 가져오기 1. 객체의 Key 가져오기 Object.keys 배열의 경우 key로 index를 반환 객체의 key가 숫자인 경우 정렬된 값으로 반환 2. 객체의 Key와 값 가져오기 Object.entries 개체를 작은 배열로