연결리스트
-
연결리스트 구현 추상자료형 : 어떠한 데이터와 그 데이터를 연산하는 기능을 표기하는 것 ex)세탁기의 여러가지 빨래기능-빨래, 탈수, 남은시간, 배수 등(연산) 옷(데이터) 세탁기의 여러가지 기능만 나열했을 뿐 구체적인 구현방법은 나오지 않음(추상) 연결리스트의 추상자료형 -> 자바스크립트로 표현 1. 연결리스트의 모든 데이터 출력 -> printAll() 2. 연결리스트의 모든 데이터를 제거 -> clear() 3. 인덱스 삽입 -> insertAt(index, data); 4. 마지막 데이터 뒤에 데이터를 삽입하는 기능 -> insertLast(data) 5. 인덱스 삭제 -> deleteAt(index); 6. 마지막 데이터를 삭제 -> deleteLast(); 7. 원하는 인덱스에 있는 데이터 읽..
자료구조와 알고리즘 인강 정리 : 연결리스트 구현연결리스트 구현 추상자료형 : 어떠한 데이터와 그 데이터를 연산하는 기능을 표기하는 것 ex)세탁기의 여러가지 빨래기능-빨래, 탈수, 남은시간, 배수 등(연산) 옷(데이터) 세탁기의 여러가지 기능만 나열했을 뿐 구체적인 구현방법은 나오지 않음(추상) 연결리스트의 추상자료형 -> 자바스크립트로 표현 1. 연결리스트의 모든 데이터 출력 -> printAll() 2. 연결리스트의 모든 데이터를 제거 -> clear() 3. 인덱스 삽입 -> insertAt(index, data); 4. 마지막 데이터 뒤에 데이터를 삽입하는 기능 -> insertLast(data) 5. 인덱스 삭제 -> deleteAt(index); 6. 마지막 데이터를 삭제 -> deleteLast(); 7. 원하는 인덱스에 있는 데이터 읽..
2023.03.31 -
배열 배열 : 프로그래밍 언어에서 기본적으로 제공하는 자료구조 프로그래밍 언어에서 배열을 선언할 때 배열의 크기를 알려준다 int arr[10] = {1,2,3,4,5}; 위와 같이 배열을 선언할 때 운영체제는 메모리에서 숫자 10개가 들어갈 수 있는 연속된 빈공간을 찾아 배열의 값을 할당한다. 할당하지 않은 부분은 의미없는 값이 저장되어있다. 배열의 장점 : 배열의 인덱스 참조는 길이에 상관없이 한 번에 가져오기 때문에 O(1)의 성질을 가진다. 따라서 배열은 참조에서 좋은 성능을 보인다. 배열의 단점 : 배열의 참조 성능은 좋지만, 데이터의 삭제, 삽입 성능은 좋지 않다. 배열의 크기가 계속 커진다면 메모리가 늘어난 만큼의 연속된 공간을 다시 찾아야 하기 때문. 즉, 연속된 메모리 공간이 필요하고, ..
자료구조와 알고리즘 인강 정리 : 배열, 연결리스트배열 배열 : 프로그래밍 언어에서 기본적으로 제공하는 자료구조 프로그래밍 언어에서 배열을 선언할 때 배열의 크기를 알려준다 int arr[10] = {1,2,3,4,5}; 위와 같이 배열을 선언할 때 운영체제는 메모리에서 숫자 10개가 들어갈 수 있는 연속된 빈공간을 찾아 배열의 값을 할당한다. 할당하지 않은 부분은 의미없는 값이 저장되어있다. 배열의 장점 : 배열의 인덱스 참조는 길이에 상관없이 한 번에 가져오기 때문에 O(1)의 성질을 가진다. 따라서 배열은 참조에서 좋은 성능을 보인다. 배열의 단점 : 배열의 참조 성능은 좋지만, 데이터의 삭제, 삽입 성능은 좋지 않다. 배열의 크기가 계속 커진다면 메모리가 늘어난 만큼의 연속된 공간을 다시 찾아야 하기 때문. 즉, 연속된 메모리 공간이 필요하고, ..
2023.03.31