- C++/재귀 탐색을 루프로 구현 . . . . 13 matches
#keywords C++,재귀
교과서에 보면 모든 재귀 탐색은 루프로 구현 가능하다고 적혀 있다. 일반적으로 아래와 같이 스택으로 구현한다.
재귀가 반복문보다 메모리를 많이 차지하며 속도가 느리다고 알려져있다. 하지만 이건 언어에 따라 다르다. 그리고 컴파일러에 따라 다르다. 그리고 데이터 셋에 따라 다르다. 일반적으로 재귀 탐색을 루프로 직접 구현하는건 드라마틱하게 속도가 빨라지지 않는다. 성능만을 생각한다면 루프 구현이 아니라 컴파일러가 꼬리 재귀(tail recursion, return에서 추가 연산을 필요로 하지 않는 형태) 최적화가 가능한 형태로 재귀 탐색을 구현하는 것이 낫다(__컴파일러가 가능하면 최적화 하는 과정에서 꼬리 재귀를 반복문으로 변경한다__). 기존 재귀의 문제였던 메모리와 성능에 대한 문제가 제거되는 것이다. 루프로 직접 구현할 때 이점은 재귀 깊이가 아주 깊어질 때 스택이 깨지는 건 확실히 막을 수 있다.
재귀로 구현한 부분 집합의 모든 경우의 수 탐색
재귀 탐색을 루프로 구현
재귀로 구현한 부분 집합의 모든 경우의 수 탐색 -- 0.0046s
재귀를 반복문과 스택으로 구현 -- 0.0058s
- 윈도우용 wget . . . . 2 matches
-r 옵션의 'r' 은 '재귀적'을 의미하는 'recursive'의 줄임이다. 디렉토리 구조와 파일을 그대로 복사해 온다.
재귀적 탐색의 깊이 레벨은 기본값이 '5'로 되어 있다. '-l depth' 옵션을 사용하면 바꿀수 있다. 이 레벨이 증가함에 따라 복사해오는 파일은 지수 함수적으로 증가하게 된다.
- C++ . . . . 1 match
["/재귀 탐색을 루프로 구현"]
- GNU 선언문 요약 . . . . 1 match
GNU란 `GNU는 유닉스가 아니다`를 의미하는 영어표현의 재귀적 약자이며 원하는 모든 사람이 자유롭게 사용할 수 있는 소프트웨어 시스템의 이름이다. 이를 위해 자원자들과 프로그램, 장비, 금전적인 도움이 절실하다.
- omr1/404/01 . . . . 1 match
// 대량의 노드를 처리할 때 위 재귀함수에서 스택 오버플로우 발생. 7~800개 이하에서만 사용 가능
Found 5 matching pages out of 1230 total pages (0 pages are searched)
You can also click here to search title.