구글 입사 문제로 작년 쯤에 인터넷에 유행했던 문제 중에
1부터 10000까지에 쓰인 8의 갯수를 구하는 문제의 답을 구하는 과정을 python.kr 에서 파이썬으로 구현한 식을 몇 개 보았는데요
def f(n):
if n == 1:
return 1
return f(n-1) * 10 + 10 ** (n-1)
print f(4)
와
def f(n):
if n ==1:
return 1
return n * (10**(n-1))
print f(4)
의 실질적인 차이에 대해 알고 싶습니다
후자의 경우가 훨씬더 상식적으로 쉽게 나올 수 있는 답일거 같은데
전자 처럼 함수안에 함수가 다시 들어갈 경우 처리속도에 긍정적인 영향을 끼치는지 궁금합니다
http://en.m.wikipedia.org/wiki/Tail_call
아 파이썬은 지원안한데
tail call은 지원하든 안하든 저코드와는 아무상관없는데?? 저 코드가 tail call이 아닌데 말이지 ... 프갤의 좆문질은 정말 놀랍네
ㅇㅇ 맞다 실수했다 스택말고는 딱히 생각 나는 답은 없는데