[알고리즘설계] Log

최대 1 분 소요

[알고리즘설계] Log

기본 로그관련

  • log(base a)xy = log(base a)x + log(base a)y

  • log(base a)b = log(base c)b / log(base c)a

  • log(base a)n^b = blog(base a)n

  • log(base 2)2^n = n

  • n개의 수를 표현하기 위한 비트 수 = log(base 2)n

  • 완전 이진 트리의 높이는 log(base 2) n

로그의 다양한 활용 -1 : a^n 빨리 계산하기

  • 실제로 a^n을 계산하려면 a 를 n번 곱하는 연산횟수가 필요하다.

  • (a^n/2)^2 로 나누어 계산과정을 반복한다.(n이 홀 수 일땐 a를 한번 더 곱한다.)

  • ex) a^17 = (a^8)^2 * a = ((a^4)^2)^2 * a = (((a^2)^2)^2)^2 * a

  • 즉 log(base 2)17 인 대략 4번 정도면 계산을 할 수 있다.

Harmonic Number 구하기

  • 이 부분은 수식과 그래프가 많아서 따로 한글파일로 정리한 사진을 첨부하겠다.

log(base2)n! 구하기

  • 역시 한글파일로 정리한 사진을 첨부하겠다.


  • 틀린 부분이 존재할 수 있으니 참고해주시기 바랍니다.

댓글남기기