CWN(CHANGE WITH NEWS) - 자료구조, 컴퓨터를 전공한다면 꼭 배워야한다...왜?

  • 비울산20.3℃
  • 흐림장흥21.3℃
  • 흐림상주18.2℃
  • 맑음인천24.4℃
  • 흐림고창군21.0℃
  • 흐림부안20.7℃
  • 흐림정선군18.9℃
  • 흐림통영21.3℃
  • 구름많음양평22.5℃
  • 구름많음춘천21.3℃
  • 흐림서청주20.7℃
  • 비부산22.5℃
  • 흐림장수18.6℃
  • 구름조금강화19.8℃
  • 구름조금파주20.1℃
  • 흐림대전20.1℃
  • 흐림구미19.8℃
  • 흐림금산19.9℃
  • 구름많음군산20.7℃
  • 구름많음고산25.6℃
  • 흐림동해23.7℃
  • 비안동19.2℃
  • 흐림의성19.6℃
  • 흐림정읍20.9℃
  • 흐림양산시21.7℃
  • 흐림영천19.9℃
  • 흐림보성군21.2℃
  • 흐림전주20.9℃
  • 구름많음세종19.7℃
  • 흐림울진21.9℃
  • 흐림영월19.9℃
  • 흐림진도군21.3℃
  • 구름많음동두천20.8℃
  • 흐림태백18.6℃
  • 구름많음서귀포25.8℃
  • 흐림남원19.0℃
  • 흐림거창18.7℃
  • 비대구19.8℃
  • 흐림성산24.7℃
  • 구름조금서울23.9℃
  • 구름많음영광군21.0℃
  • 구름많음순천19.8℃
  • 흐림청송군19.5℃
  • 흐림울릉도23.6℃
  • 구름많음홍성21.7℃
  • 구름많음이천21.8℃
  • 흐림산청19.0℃
  • 흐림거제21.7℃
  • 구름많음완도21.7℃
  • 흐림원주22.9℃
  • 맑음백령도21.2℃
  • 흐림북강릉22.0℃
  • 흐림제천20.0℃
  • 흐림흑산도22.1℃
  • 흐림강릉23.6℃
  • 흐림대관령14.8℃
  • 흐림고창20.9℃
  • 구름조금인제18.5℃
  • 흐림목포21.0℃
  • 구름많음서산22.1℃
  • 구름많음제주25.6℃
  • 흐림경주시20.8℃
  • 구름많음천안21.2℃
  • 구름많음홍천20.9℃
  • 흐림의령군19.1℃
  • 흐림문경18.5℃
  • 구름많음보령21.6℃
  • 흐림영주19.4℃
  • 비포항21.8℃
  • 비광주19.8℃
  • 구름많음수원22.7℃
  • 흐림영덕20.8℃
  • 흐림보은18.9℃
  • 흐림추풍령18.1℃
  • 흐림김해시20.7℃
  • 구름많음속초20.6℃
  • 흐림진주19.7℃
  • 흐림고흥20.9℃
  • 흐림임실19.7℃
  • 흐림여수20.7℃
  • 흐림강진군21.5℃
  • 흐림함양군19.1℃
  • 흐림봉화18.1℃
  • 흐림남해20.4℃
  • 흐림합천20.0℃
  • 구름조금철원20.1℃
  • 흐림해남21.7℃
  • 구름많음북춘천20.2℃
  • 흐림순창군19.3℃
  • 흐림창원21.0℃
  • 흐림청주23.6℃
  • 흐림충주21.3℃
  • 흐림북창원21.2℃
  • 비북부산22.4℃
  • 흐림밀양20.8℃
  • 흐림광양시20.6℃
  • 구름많음부여20.5℃
  • 2025.09.09 (화)

자료구조, 컴퓨터를 전공한다면 꼭 배워야한다...왜?

김영휘 / 기사승인 : 2021-03-28 23:23:25
  • -
  • +
  • 인쇄

자료구조를 배워야 하는 이유를 말하기에 앞서 자료구조의 개념을 설명하겠다. 자료구조는 자료를 효율적으로 표현하고 저장하고 처리하기 위해 정리하는 것으로, 자료 객체의 변수 표현과 처리함수를 해당 프로그램의 자료구조라고 한다.

자료구조에서는 프로그래밍 문제에서 처리해야 할 자료 객체들과 그들의 속성을 파악해, 이들 사이의 상관관계와 처리 연산을 정의하고 구현하는 것에 대한 체계적이고 효율적인 방법을 연구한다. 자료구조는 처리해야 할 현실 세계의 자료 객체를 논리적 자료추상화를 통해 표현된 추상 자료 객체의 집합, 그리고 이 객체 집합에 대한 처리 연산의 집합이다.

그렇다면 컴퓨터 전공자가 자료구조를 배워야 하는 이유는 무엇일까?

간단하게 말하자면, 컴퓨터가 효율적으로 문제를 처리하기 위해서는 문제를 정의하고 분석하여 그에 대한 최적의 프로그램을 작성해야 하기 때문이다. 일반적으로 프로그래밍은 문제 이해 및 분석, 프로그램의 변수 설계, 알고리즘 설계, 코딩, 실험 및 디버깅의 순서로 이루어진다.

프로그램의 변수 설계는 처리해야 할 자료 객체의 속성과 상관관계를 파악하여 이를 프로그램의 변수들로 정의해서 처리하면 된다. 그러나 복잡한 프로그램의 설계는 그리 간단하게 해결되는 것이 아니다. 따라서 자료를 효율적으로 저장하고 처리하기 위해 적합한 자료구조를 활용해야 한다.

게임을 예를 들어서 설명하자면, 수많은 몬스터(적)가 한순간에 생성되어 움직일 때 각각의 개체에 메모리를 로드시키면 불필요하게 오래 걸리고 비효율적으로 실행된다. 자료구조는 여기서 더 효율적인 게임을 만들기 위해 필요하다. 적합한 자료구조를 선택하기 위해 데이터의 처리 시간, 크기, 활용 빈도 등 많은 부분을 고려해야 할 것이다.

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

최신기사

뉴스댓글 >

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

댓글 0

Today

Hot Issue