자료구조와 알고리즘

JungHoon Han·2023년 4월 18일
0

CS 지식

목록 보기
4/9

자료구조

자료구조는 데이터를 저장하고 관리하는 방법이다.
배열, 링크드리스트, 스택, 큐 등이 자주쓰이는 자료구조이다.

  • 배열(Array)
    같은 타입의 데이터를 연속적인 메모리 공간에 저장하는 자료구조이다. 배열의 각 요소는 인덱스로 접근할 수 있다.

  • 링크드리스트(Linked List)
    데이터를 노드로 표현하고 노드들을 포인터로 연결하여 저장하는 자료구조이다. 링크드리스트는 데이터의 삽입과 삭제가 용이하다.

  • 스택(Stack)
    후입선출(LIFO)방식으로 스택의 가장 위에있는 데이터만 접근할 수 있으며, 데이터의 삽입과 삭제가 스택의 가장 위에서만 이루어진다.

  • 큐(Queue)
    선입선출(FIFO)방식으로 큐의 가장 앞에 있는 데이터만 접근할 수 있으며, 데이터의 삽입은 큐의 뒤에서 이루어지고 삭제는 큐의 앞에서 이루어진다.

알고리즘

알고리즘은 저장된 데이터를 찾거나 변형, 수정할 때 필요한 방법이다.
검색 알고리즘, 정렬 알고리즘, 그래프 알고리즘 등이 자주 쓰이는 알고리즘이다.

  • 검색 알고리즘
    데이터 집합에서 특정 데이터를 찾는 알고리즘으로, 이진 검색과 선형 검색이 대표적인 검색 알고리즘이다.

  • 정렬 알고리즘
    데이터 집합을 특정 순서로 정렬하는 알고리즘으로, 버블 정렬, 선택 정렬, 삽입 정렬, 퀵 정렬 등이 대표적인 정렬 알고리즘이다.

  • 그래프 알고리즘
    그래프 구조에서 최단 경로를 찾거나 최소 신장 트리를 구하는 등의 문제를 해결하는 알고리즘이다. 다익스트라(Dijkstra) 알고리즘과 프림 알고리즘이 대표적인 그래프 알고리즘이다.

profile
Node.js 주니어 개발자

0개의 댓글