자료구조와 알고리즘

BY Jung·2022년 1월 26일
0

자료구조

자료들을 정리하고 조직화하는 구조를 지칭

  • 단순 자료구조
  • 복합 자료구조(ex: 컨테이너)
    • 선형(linear) 자료구조 : 항목들을 순서적 으로 나열하여 저장
      ex: 스택, 큐, 덱, 리스트
    • 비선형(non-linear) 자료구조 : 트리(계층 구조), 힙(우선순위 큐), 이진 탐색트리 & AVL트리(탐색), 그래프(복잡한 연결관계 표현)

알고리즘

문제를 해결하는 절차

  • 알고리즘 기술 방법
    • 자연어(영어, 한국어) : 편리, 의미가 애매
    • 흐름도(flow chart) : 알고리즘이 복잡하면 보기 어려움
    • 유사 코드(pseudo-code) : 자연어보단 체계적, 프로그래밍 언어보단 덜 엄격함
    • 프로그래밍 언어(C, Java, Python)

✓ 추상 자료형(Abstract Data Type, ADT)

추상적으로 정의한 자료형

  • 어떤 자료들과 자료에 가해지는 연산들을 구체적으로 표시
    • 데이터: 가방(Bag)
    • 연산: insert(), remove(), contains(), count(), etc...
  • ADT는 구현에 관한 세부사항을 감추고 사용자에게 간단한 인터페이스만 제공
    ⚡️ Why? 사용자는 굳이 내부를 뜯어보고 구현원리를 알 필요가 X
    정보은닉의 기본 개념
profile
Slow and steady wins the race

0개의 댓글