연결리스트 - 구현
연결리스트 - 구현
2024.01.28연결리스트 구현하기: 자바스크립트를 활용한 데이터 관리 이번 강의에서는 자바스크립트를 이용해 연결리스트를 구현하고, 그 사용법을 알아보았습니다. 연결리스트는 데이터를 메모리에 효율적으로 분산하여 할당하고, 이를 서로 연결하여 관리하는 자료구조입니다. 이 자료구조는 다른 구조인 스택, 큐의 구현에도 활용될 수 있습니다. 다음으로 연결리스트의 추상 자료형과 실제 구현 방법을 살펴보겠습니다. 1. 연결리스트의 추상자료형 연결리스트는 데이터와 데이터에 대한 연산을 정의하는 추상자료형으로 표현됩니다. 연결리스트에서 필요한 기본 연산은 다음과 같습니다: printAll(): 모든 데이터 출력 clear(): 모든 데이터 제거 insertAt(index, data): 원하는 인덱스에 데이터 삽입 insertLast(..
연결리스트 - 개념
연결리스트 - 개념
2024.01.28배열과 연결 리스트: 데이터 구조의 선택 프로그래밍에서 데이터를 효율적으로 관리하기 위해 배열과 연결 리스트는 기본이 되는 자료구조다. 각각의 특성과 장단점을 이해하고 상황에 맞게 적절한 자료구조를 선택하는 것이 중요하다. 이번 강의에서는 배열과 연결 리스트의 특성을 비교하고, 언제 어떤 자료구조를 선택해야 하는지에 대해 알아본다. 1. 배열: 연속된 메모리 공간을 사용하는 자료구조 인덱스를 통한 빠른 접근: 배열은 메모리 상에서 연속된 공간을 차지하기 때문에, 시작 주소만 알면 인덱스를 통해 데이터에 빠르게 접근할 수 있다(O(1)). 데이터 삽입과 삭제의 비효율성: 배열에 데이터를 삽입하거나 삭제할 때는 기존 데이터를 복사하고, 새로운 메모리 공간을 할당하는 등의 과정이 필요하다. 2. 연결 리스트:..
배열
배열
2024.01.28배열: 기본이 되는 자료구조의 이해 배열은 프로그래밍의 가장 기본이 되는 자료구조 중 하나다. 자바스크립트를 비롯한 대부분의 프로그래밍 언어에서 배열은 데이터를 효율적으로 관리하기 위해 사용된다. 하지만 자바스크립트의 배열은 다른 언어의 일반적인 배열과 몇 가지 중요한 차이점이 있다. 이 글에서는 일반적인 배열의 특성과 자바스크립트 배열의 독특한 특성을 살펴본다. 1. 일반적인 배열의 특성 메모리 상의 배열: 배열은 메모리에서 연속된 공간을 차지한다. 예를 들어 **int arr[10]**으로 배열을 선언하면, 운영체제는 10개의 정수가 들어갈 수 있는 연속된 메모리 공간을 확보한다. 인덱스를 통한 빠른 접근: 배열의 인덱스를 통해 데이터에 빠르게 접근할 수 있다. 인덱스 참조는 O(1)의 시간 복잡도를..
자료 구조와 알고리즘이란?
자료 구조와 알고리즘이란?
2024.01.28프로그래밍의 핵심: 자료구조와 알고리즘 프로그래밍의 세계에서 자료구조와 알고리즘은 중요한 두 축이다. 이 글에서는 자료구조의 기본 개념부터 알고리즘의 적용까지, 그 핵심을 짚어본다. 1. 자료구조: 데이터의 체계적 관리 자료구조는 데이터가 어떻게 조직되고, 관리되며, 어떤 방식으로 사용되는지를 규정한다. 기본적인 자료구조로는 변수와 배열이 있다. 이들은 데이터를 저장하고 처리하는 방식에서 차이를 보인다. 1.1. 일반 변수와 배열: 데이터 저장의 기본 일반 변수: 단일 데이터를 저장하며, 각 변수는 독립적인 데이터를 갖는다. jsxCopy code let a = 87; let b = 70; let c = 100; let average = (a + b + c) / 3; 배열: 여러 데이터를 하나의 변수에서..