알고리즘: 빅오 표기법(Big O notation)

2024. 4. 25. 00:15·CS/Structure & Algorithm

 

 

 


 

 

점근석 분석

점근적 분석은 함수의 인자가 특정 값이나 무한대로 접근할 때의 함수의 행동을 설명하는 수학적 방법이다.

컴퓨터 공학에서는 알고리즘을 실행 시간이나 공간 사용량이 입력 크기에 따라 어떻게 증가하는지를 기준으로 분류한다. => 시간복잡도, 공간복잡도 계산에 활용할 수 있다.

 

 

 

빅오 표기법(Big O notation)

간단히 말해, 빅오는 어떤 함수 f(x)의 성장률이 다른 함수 g(x)의 성장률에 비해 같거나 느리다는 것을 의미한다.

빅오 외에도 빅세타, 빅오메가가 있으나 빅오를 사용하는 이유는 알고리즘 설계 시 최악 복잡도를 고려해야 하기 때문이다.
최악의 경우 = 즉 어느 상한선까지 같거나 그 이하로 증가하는지를 알아야 한다.

 

 

  • 빅 오(O): f(x)의 성장률이 g(x)에 비례하여 증가하거나 그 이하로 증가한다. 상한선을 의미한다.
  • 빅 세타(Θ): 즉, f(x)의 성장률이 g(x)와 증가율이 같다. 
  • 빅 오메가(Ω): f(x)의 성장률이 g(x)에 비례하여 증가하거나 그 이상으로 증가한다. 하한선을 의미한다.

 

 

전공 수업 때 필기한 자료입니다.

 

 

 

 

 

빅오를 이용한 복잡도 계산 방법

복잡도 계산시 빅오를 이용하여 가장 영향력이 큰 부분, 즉 가장 높은 차수만 따진다.

상수나 가장 높은 차수가 아닌 경우 그냥 아예 배제하면 빠르게 계산할 수 있다.

 

 

 

 


 

더보기

출처:

 

빅오 표기법 (big-O notation) 이란

컴퓨터 과학(Computer Science) 에서 알고리즘은 어떠한 문제를 해결하기 위한 방법이고, 어떠한 문제를 해결 하기 위한 방법은 다양하기 때문에 방법(알고리즘) 간에 효율성을 비교하기 위해 빅오(bi

noahlogs.tistory.com

 

빅오 표기법을 설명하다. 시간과 공간의 복잡도.

빅오 표기법을 완벽히 이해하시나요? 만약 그렇다면 이 글이 면접 전에 기억을 환기 시켜주길 바랍니다. 그렇지 않다면, 걱정할 필요 없습니다. 컴퓨터 과학 분야에 함께 도전해 볼까요? 알고리

www.freecodecamp.org

 

저작자표시 (새창열림)

'CS > Structure & Algorithm' 카테고리의 다른 글

여러가지 트리  (0) 2023.04.16
트리의 기초  (0) 2023.04.16
링크드 리스트(Linked List)  (0) 2022.12.23
배열  (0) 2022.12.22
'CS/Structure & Algorithm' 카테고리의 다른 글
  • 여러가지 트리
  • 트리의 기초
  • 링크드 리스트(Linked List)
  • 배열
abyss-s
abyss-s
프론트엔드 개발합니다!
  • abyss-s
    abyss-s의 블로그입니다.
    abyss-s
  • 전체
    오늘
    어제
    • 분류 전체보기 (190)
      • Web (16)
        • JavaScript (6)
        • TypeScript (1)
        • React (5)
        • Vue (0)
        • Storybook (1)
        • Next.js (1)
      • Backend & Infra (8)
        • Database (3)
        • Node.js (2)
        • SpringBoot (1)
      • PS (71)
      • CS (30)
        • OS (13)
        • Structure & Algorithm (5)
        • Network (10)
        • 정보처리기사 (2)
      • Language (18)
        • OOP (1)
        • JAVA (13)
        • C++ (4)
      • Activities (14)
        • 멋쟁이 사자처럼 (2)
        • OSSCA (3)
        • LG U+ URECA (5)
        • Project (2)
      • AI (0)
      • Git & Github (5)
      • Notion (1)
      • IT (4)
      • Statistics (11)
      • Book (4)
      • Diary (1)
      • Game (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • 깃허브
    • 백준
    • 트위터
  • 공지사항

    • abyss-s의 티스토리에 오신 것을 환영합니다.
  • 인기 글

  • 태그

    OS
    Python
    파이썬
    통계학
    BFS
    코드트리
    그리디
    운영체제
    DP
    github
    자바기반응용프로그래밍
    BAEKJOON
    C++
    네트워크
    JavaScript
    생활코딩
    Java
    자바스크립트
    React
    백준
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
abyss-s
알고리즘: 빅오 표기법(Big O notation)
상단으로

티스토리툴바