배열 2

[컴퓨터과학개론] 자료구조

자료구조 자료 사이의 논리적 관계를 컴퓨터나 프로그램에 적용하기 위해서는 자료의 추상화가 필요함 → 자료구조(data structure): 추상화를 통해 자료의 논리적 관계를 구조화한 것 자료가 복잡해지거나 소프트웨어가 복잡해질수록 자료구조의 중요성이 강조됨 추상화: 공통적인 개념을 이용하여 같은 종류의 다양한 객체를 정의하는 것 자료(데이터)의 추상화: 다양한 객체를 컴퓨터에서 표현하고 활용하기 위해 필요한 데이터의 구조에 대해서 공통의 특징만을 뽑아 정의한 것 자료의 추상화와 구조화가 적절히 이루어지지 못하면 소프트웨어는 비효율적으로 개발되거나 비효율적으로 수행되거나 소프트웨어의 확장성에 문제가 생기거나 소프트웨어의 유지보수에 문제가 생기거나 할 수 있음 미리 정의된 자료구조 프로그래밍 언어에서 제공..

CS 2023.11.19

[자료구조] 배열

배열의 정의 배열의 정의 일정한 차례나 간격에 따라 벌여 놓음(사전적 정의) ‘차례’(순서)와 관련된 기본적인 자료구조 원소의 메모리 공간(메인 메모리, DDR)의 물리적인 위치를 ‘순서’적으로 결정하는 특징 배열의 순서는 메모리 공간에서 저장되는 ‘원소값의 물리적 순서’ 인덱스와 원소값()의 쌍으로 구성된 집합 배열의 의미 ‘호수’(인덱스)로 표현되는 순서를 갖는 ‘아파트’ → 호수: 인덱스 / 원소값: 거주민 원소들이 모두 같은 자료형과 같은 크기의 기억 공간을 가짐 배열의 인덱스값을 이용해서 원소값에 접근하기 때문에 직접 접근이 가능함 배열의 인덱스값: 추상화된 값 = 컴퓨터의 내부구조나 메모리 주소와 무관하게 개발자에게 개념적으로 정의됨 메모리 주소값은 실제 메모리의 물리적인 위치값 배열의(추상화..