티스토리 뷰

자료

  • 현실 세계에 대한 관찰을 통해 얻어진 단순한 값(사실), 가공되지 않은 그 자체
  • 정성 데이터: 숫자로 표현되지 않는 데이터, 언어, 문자, 이미지, 동영상 등 비정형 데이터
  • 정량 데이터: 숫자로 표현할 수 있는 데이터, 수치, 도형, 기호 등 저장/검색/분석 활용에 용이

정보

  • 자료를 처리하여 얻어진 값, 의사결정을 위한 지식

 

자료구조

  • 자료의 효율적인 접근, 수정을 가능하도록 자료의 조직, 관리, 저장하는 일련의 작업
  • 데이터 값의 모임, 데이터 간의 관계
  • 자료구조를 사용하는 이유: 프로그램의 효율성을 증대하기 위함(기억 공간 절약, 프로그램 수행 시간 최소화)
  • 자료구조의 선택에 따라 성능, 비용이 다름
  • 자료구조를 선택하기 위한 과정
    1. 데이터의 제약 조건 파악 (ex. 데이터를 빠르게 찾아야 하는지, 데이터가 자주 추가/삭제되는지, 메모리를 적게 써야 하는지)
    2. 필요한 연산 결정, 연산에 적합한 특별한 데이터 구조 파악
    3. 1,2번의 결과에 따라 최적의 데이터 구조 선택

 

프로그램

  • 특정 작업을 수행하는 일련의 명령어들의 모음, 즉 데이터를 표현(자료구조)하고, 표현된 데이터를 처리(알고리즘)하는 명령어 집합체

 

자료구조의 종류

  • 단순구조: true/false, 정수, 실수, 문자, 문자열
  • 비단순구조
    • 선형구조: 배열, 연결리스트, 스택, 큐
    • 비선형구조: 트리, 그래프

자료의 물리적 단위

  • 비트 (bit): 정보 표현의 최소 단위
  • 니블 (nibble = 4bit)
  • 바이트 (byte = 8bit)
  • 워드 (word): CPU가 한 번에 처리할 수 있는 단위

자료의 논리적 단위

  • 필드 (field): 파일구성의 최소 단위
  • 레코드 (record): 프로그램 처리의 기본 단위
  • 블록 (block): 저장장치에 입출력될 때의 기본 단위
  • 파일 (file): 응용 프로그램 구성의 기본 단위(레코드들의 집합)
  • 데이터베이스 (database): 파일의 집합

 

자료 표현의 종류