CWN(CHANGE WITH NEWS) - 자료구조, 어디까지 알고있니? #0. 자료구조 기본개념

  • 맑음동두천16.0℃
  • 흐림동해22.0℃
  • 맑음백령도20.7℃
  • 구름조금강릉20.3℃
  • 맑음춘천15.8℃
  • 비서귀포25.3℃
  • 흐림울진19.9℃
  • 구름많음김해시21.1℃
  • 맑음천안17.3℃
  • 맑음대관령9.8℃
  • 구름많음의령군19.7℃
  • 구름많음통영21.5℃
  • 흐림태백16.2℃
  • 흐림보은19.4℃
  • 구름조금진주20.7℃
  • 구름조금부안19.4℃
  • 구름조금충주18.6℃
  • 맑음수원18.6℃
  • 구름많음청송군18.8℃
  • 맑음북강릉20.6℃
  • 구름많음양산시22.8℃
  • 맑음서울18.5℃
  • 흐림서청주19.0℃
  • 맑음부여20.0℃
  • 구름조금밀양21.4℃
  • 흐림영천19.7℃
  • 구름많음의성19.6℃
  • 흐림봉화17.7℃
  • 구름많음금산20.1℃
  • 맑음속초18.6℃
  • 맑음고창20.2℃
  • 맑음이천18.1℃
  • 맑음북춘천15.5℃
  • 맑음홍천16.0℃
  • 흐림목포21.0℃
  • 흐림추풍령18.6℃
  • 구름조금보성군21.9℃
  • 흐림영덕19.2℃
  • 흐림문경19.4℃
  • 구름조금흑산도23.4℃
  • 흐림제주25.0℃
  • 맑음인제11.9℃
  • 구름많음광양시21.2℃
  • 흐림안동19.1℃
  • 맑음강진군21.7℃
  • 구름많음부산23.1℃
  • 흐림청주20.2℃
  • 흐림창원21.3℃
  • 구름많음장흥21.9℃
  • 구름많음북창원21.9℃
  • 맑음정읍19.9℃
  • 박무홍성18.8℃
  • 비울릉도19.1℃
  • 맑음원주17.9℃
  • 구름많음고산23.7℃
  • 구름조금보령19.8℃
  • 구름많음거제21.7℃
  • 맑음인천20.0℃
  • 구름조금완도22.2℃
  • 흐림산청19.4℃
  • 흐림영주18.8℃
  • 흐림진도군21.3℃
  • 흐림순천
  • 구름많음구미19.8℃
  • 구름많음순창군20.0℃
  • 맑음양평18.8℃
  • 흐림거창19.2℃
  • 흐림광주20.4℃
  • 흐림경주시20.3℃
  • 구름조금정선군14.6℃
  • 흐림남원20.0℃
  • 맑음영광군20.4℃
  • 구름많음합천20.6℃
  • 흐림장수18.5℃
  • 구름많음대전20.8℃
  • 구름조금제천16.0℃
  • 맑음군산19.7℃
  • 흐림임실19.7℃
  • 구름많음여수21.7℃
  • 흐림북부산22.2℃
  • 맑음파주16.2℃
  • 흐림대구20.1℃
  • 맑음해남21.2℃
  • 흐림함양군19.6℃
  • 맑음세종20.2℃
  • 맑음강화17.8℃
  • 구름조금고흥21.5℃
  • 흐림성산24.2℃
  • 맑음전주20.0℃
  • 박무울산20.3℃
  • 구름많음남해21.0℃
  • 맑음철원14.3℃
  • 맑음고창군19.8℃
  • 흐림영월16.9℃
  • 비포항20.3℃
  • 흐림상주19.2℃
  • 맑음서산18.7℃
  • 2025.09.10 (수)

자료구조, 어디까지 알고있니? #0. 자료구조 기본개념

서지연 / 기사승인 : 2021-04-14 21:03:43
  • -
  • +
  • 인쇄

컴퓨터가 효율적으로 문제를 처리하기 위해서는 자료를 보관하고 정리하는 기술이 필요한데 컴퓨터는 자료의 특성에 따라 다양한 자료구조 기법을 사용한다. 같은 알고리즘이라도 자료구조가 달라지면 전혀 다른 프로그램이 될 수 있어, 자료에 알맞은 자료구조를 만드는 것이 매우 중요하다. 따라서 이번 기사부터 컴퓨터에 중요한 자료구조에 대해 설명하고자 한다. 이번 기사에서는 자료구조의 기본 개념 및 자료구조의 정의를 이야기한다.

자료구조의 정의
자료구조는 컴퓨터에서 처리할 자료를 효율적으로 관리하고 구조화시키기 위한 학문이다. 즉, 자료를 효율적으로 사용하기 위해서 자료의 특성에 따라서 분류하여 구성하고 저장 및 처리하는 모든 작업을 의미한다.

자료구조는 자료처리의 성능과 효율에 직접적인 영향을 미친다. 따라서 자료구조는 현실 세계의 실제 자료들의 관계를 잘 반영할 수 있어야 하고, 효율적으로 자료처리를 수행할 수 있도록 간단명료해야만 한다.

자료구조를 사용하는 이유
1) 효율성

자료를 구조화하여 사용하면서 조금 더 효율적으로 알고리즘을 구성할 수 있다. 자료를 구조화하여 사용함으로써 처리 시간, 처리하는 기억 용량 등을 고려하여 알맞은 알고리즘을 선택하여 사용할 수 있다.

2) 추상화
자료를 구조화하는 데 있어 자료를 표현하고 조작하는 방법을 추상화하여 사용함으로써 프로그램의 의존적 상황을 탈피할 수 있다. 다양한 프로그램 언어 사용이 가능하며, 어떻게 사용할 것인가에 대해 초점을 두게 된다.

3) 재사용성
자료구조는 모듈화되어 있고 문맥에 자유로워, 재사용이 가능하다. 문맥에 자유로워, 다양한 자료에 상황에 따라 다양하게 사용할 수 있고, 규정된 자료구조를 모듈화하여 사용함으로써 다양한 프로그램에서 재사용할 수 있도록 접근해야 한다.

4) 자료구조의 연구 영역
알고리즘의 분석 기법, 스택의 삽입과 삭제 알고리즘, 큐의 삽입과 삭제 알고리즘, 최단 경로 알고리즘, 삽입 정렬/쉘 정렬의 알고리즘, 선택 정렬/버블 정렬의 알고리즘, 퀵 정렬/병합 정렬의 알고리즘, 히프 정렬/기수 정렬의 알고리즘, 외부 정렬의 알고리즘, 선형 검색의 알고리즘, 이진 검색의 알고리즘, 피보나치 검색의 알고리즘, 해싱의 충돌 해결 방안, 해싱의 오버플로우 해결 방안 등에 관한 연구 분야가 있다.

5) 자료구조의 학습영역
자료구조는 단순구조, 선형구조, 비선형구조, 파일구조로 나뉜다. 단순구조는 정수, 실수, 문자, 문자열로 다시 나뉘게 되고 선형구조는 리스트, 연결리스트, 스택, 큐, 덱으로 나뉜다. 비선형구조는 트리와 그래프로 나뉘게 되고 마지막으로 파일 구조는 순차 파일, 색인 파일, 직접 파일로 나뉘게 된다.

이렇게 이번 시간에는 자료구조가 어떤 것인지에 대해 알아봤다. 다음 시간에는 자료구조의 학습 영역 중 선형구조의 리스트와 연결리스트에 대해 알아보도록 하자.

[저작권자ⓒ CWN(CHANGE WITH NEWS). 무단전재-재배포 금지]

최신기사

뉴스댓글 >

- 띄어 쓰기를 포함하여 250자 이내로 써주세요.
- 건전한 토론문화를 위해, 타인에게 불쾌감을 주는 욕설/비방/허위/명예훼손/도배 등의 댓글은 표시가 제한됩니다.

댓글 0

Today

Hot Issue