본문 바로가기

전체 글18

선형 구조 [자료구조 정리②] 배열의 개념선형 구조선형 자료구조는 데이터가 일렬로 연결되어 있는 자료구조를 말한다. 이러한 자료구조는 데이터를 순차적으로 저장하고 접근하는데 사용된다. 대표적인 선형 자료구조로는 배열 (Array)과 연결 리스트 (LinkedList)가 있다. 배열은 정해진 크기의 메모리를 먼저 할당받아 사용하며, 자료의 물리적 위치와 논리적 위치가 같다. 배열배열은 프로그래밍에서 많이 사용되는 선형 자료구조다. 이는 동일한 데이터 타입의 요소들이 순서대로 저장되는 공간이기도 하다. 배열은 다음과 같은 특징을 가지고 있다.정적 크기: 배열은 미리 정해진 크기를 가지며, 크기를 변경할 수 없다. 예를 들어, 정수형 배열 int[] numbers = new int[5];은 5개의 정수를 저장할 수 있는 공간을 생성한다.인.. 2024. 6. 18.
자료와 정보 [자료구조 정리①] 자료와 정보의 이해자료와 정보의 차이?사전적 의미로 자료(data)는 연구나 조사 등 어떤 일의 바탕이 되는 재료이다. 자료를 의미 있게 정리한다면 정보(information)가 된다. 정보는 수집한 자료를 특정한 목표를 위하여 가공 처리하여 의사 결정이나 문제를 해결하는데 활용할 수 있다. "삶이 당신에게 레몬을 준다면, 그것으로 레모네이드를 만들어라"는 철학적인 명언으로 자료와 정보에 비유한다면, 레몬이 자료라고 볼 수 있고, 레모네이드가 레몬(자료)을 가공하여 만들어진 정보라고 볼 수 있을 것이다. 추상화의 개념크게 두 가지로 나눌 수 있는데 첫 번째는 필수적인 정보만을 추출하고 나머지 정보는 감추는 과정이다. 두 번째는 공통적인 개념을 이용하여 같은 종류의 다양한 객체를 정의하는 것이기도 하다. .. 2024. 6. 18.
원형큐 삽입/삭제 원형 큐(Circular Queue)는 큐의 일종으로, 배열을 원 모양으로 둥글게 사용하는 자료 구조이다. 원형 큐는 front와 rear 두 개의 인덱스 변수를 사용하여 데이터를 저장하며, 다음과 같은 특징이 있다. 데이터 삽입 (Enqueue): 데이터를 추가할 때는 rear 인덱스를 (rear + 1) % QueueSize로 업데이트한다. 예를 들어, 큐 크기가 8이고 5를 삽입하려면 rear = (5 + 1) % 8로 rear 값을 6으로 업데이트한다.데이터 삭제 (Dequeue): 데이터를 삭제할 때는 front 인덱스를 (front + 1) % QueueSize로 업데이트한다. 예를 들어, 큐 크기가 8이고 4를 삭제하려면 front = (4 + 1) % 8로 front 값을 5로 업데이트한다.. 2024. 6. 9.
하노이의 탑 '하노이의 탑’은 프랑스의 수학자 에두아르 뤼카가 1883년 소개한 문제이다. 이 문제는 작은 원반 위에 큰 원반을 올릴 수 없다는 규칙을 가지고 있다. 알고리즘으로는 재귀함수의 좋은 예제가 되기도 한다. 하노이의 탑 문제를 풀기 위해 필요한 정보는 원반의 개수 n, 출발지 막대 start, 경유지 막대 via, 도착지 막대 to이다. 함수로 정의하면 다음과 같다. hanoi(N, start, via, to) = hanoi(N - 1, start, to, via) + move(N, start, to) + hanoi(N - 1, via, start, to) 여기서 move(N, A, C)는 원반 N을 출발지 막대 A에서 도착지 막대 C로 옮기는 동작을 나타낸다. 원반의 개수가 클수록 이동 횟수가 기하급수적.. 2024. 6. 9.