고양이와 별무리 도서관

고양이와 별무리 도서관 Post List

빅오(Big-O) 표기법

빅 오(big-O) 표기법이란, 알고리즘의 효율성을 표현하기 위한 표기법입니다. 빅 오 표기법 같은 표기법을 점근적 표기법이라고 하는데, 알고리즘의 성능을 입력 값의 크기가 커질 때, 어떻게 변하는지. 즉, 성능의 성장률을 수학적으로 표현하는 방법입니다. (데이터의 수에 따라 성능에 영향을 미치는 값의 크기를 수학적으로 표현) 즉, 알고리즘 내의 ...

[L_Value & R_Value] 3. C++ 11 값 범주 (Lvalue, Xvalue, Prvalue)

xvalue(eXpiring Value)는 C++ 11 이후에 추가된 개념으로 기존의 값 범주에서 변화가 생겼습니다. 때문에 값 범주가 기존의 개념보다 이해하고 정리하기 더 어려운 개념이 되어버린 것 같습니다. 이 글에서 저는 이 새로운 값 범주에 대해 제가 이해한 과정 정도를 글로 표현하고 정리 해둘까 합니다. C++ 11 이후의 값 범주 C...

(백준/C++) 2630_색종이 만들기

2630번: 색종이 만들기 (acmicpc.net) 문제는 분할 정복(Divide and Conquer) 문제입니다. 분할 정복은 큰 문제를 작은 부분 문제로 나누어 해결하고, 그 결과를 합쳐 원래 문제의 해결책을 찾는 방법입니다. 문제의 예시 그림에서 볼 수 있듯이 가로 세로 절반씩 분할 후 모든 색이 칠해져 있는지 확인하고 그 색이 하얀색인지 ...

(백준/C++) 13305_주유소

주유소 문제는 탐욕 알고리즘으로 풀 수 있는 문제입니다. 탐욕 알고리즘(Greedy Algorithm)이란, 매 순간 최적이라고 생각되는 방법을 선택하는 방식으로 문제를 해결하는 알고리즘입니다. 즉, 다른 경우의 수를 생각하지 않고 현 문제에서 가장 좋아 보이는 것을 선택하다 보면 문제가 풀리는 알고리즘 입니다. 13305번: 주유소 (acmic...

[L_Value & R_Value] 2. 우측 값 참조와 이동(move semantics)

저도 우측 값 참조(rvalue reference)를 어느 정도 이해했다고 생각했는데, 글로 표현하기 위해 다시 공부하고 정리하면서도 아직 어렵고 난해한 것 같습니다. 따라서 저는 제가 이해한 정의만 나열하기보다 우선 제가 이해한 과정이나 정도만을 글로 표현하고 정리 해둘까 합니다. 먼저, 우측 값 참조(rvalue reference)를 이해하기 ...

(백준/C++) 1541_잃어버린 괄호

잃어버린 괄호 문제는 정렬을 사용하지 않아도 풀 수 있는 탐욕 알고리즘 문제입니다. 탐욕 알고리즘(Greedy Algorithm)이란, 매 순간 최적이라고 생각되는 방법을 선택하는 방식으로 문제를 해결하는 알고리즘입니다. 즉, 다른 경우의 수를 생각하지 않고 현 문제에서 가장 좋아 보이는 것을 선택하다 보면 문제가 풀리는 알고리즘 입니다. 154...