jintak0401   4년 전

이 문제를 재귀함수로 풀려고 하니 입력 숫자가 큰 경우에 대해 스택 오버플로우가 납니다. 그래서 함수 호출이 메모리의 스택 영역에서 이루어지는 방식이니, 재귀함수의 argument에 대하 스택stl을 이용하여 풀어볼까 생각하고 있습니다. 이런 방식으로 풀어도 메모리 초과가 날까요?

minjoonist   4년 전

월레 스택을 이용해 푸는 대표적인 문제중 하나가 올바른 괄호 판단 문제입니다.

https://www.acmicpc.net/proble...

근데 재귀함수를 이용해서 어떻게 푸셨는지가 궁금합니다.
재귀함수가 스택을 쓰더니만 스택을 자유자제로 다루지 못하는 걸로 알고 있습니다.

dyk777   4년 전

어떤 식으로 코드를 짜셨는지/짜실 건지에 따라 다르겠지만,

재귀적인 구조로 짠 경우에는 메모리에 함수 호출시 여러가지가 같이 묶여 스택에 들어가야 하기 때문에

실제 데이터의 개수보다 더 많이 스택에 들어가게 됩니다. 때문에 스택 오버플로가 날 확률이 높겠지요.

한편 의도된 정해가 스택을 이용한 반복문 풀이라면, 스택과 반복문을 썼다고 메모리 초과가 나지는 않을 것입니다.

댓글을 작성하려면 로그인해야 합니다.