이너 루프
Inner loop이 글은 검증을 위해 인용구가 추가로 필요하다. – · · 책 · · (2018년 9월) (이 템플릿 하는 |
컴퓨터 프로그램에서 중요한 형태의 제어 흐름은 코드 블록을 두 번 이상 실행하는 루프다.일반적인 관용구는 다른 루프 안에 내포된 루프를 갖는 것으로, 포함된 루프를 일반적으로 내부 루프라고 한다.두 가지 주요 유형의 루프가 존재하며, 두 루프는 필요에 따라 어떤 깊이로든 서로 내포될 수 있다.이 두 종류는 루프와 중루프를 위한 것이다.[1]둘 다 약간 다르지만 교환될 수도 있다.내측 루프가 없는 루프와 비교했을 때 내측 루프가 있는 루프 전체 구조의 성능이 다르다는 연구 결과가 나왔다.[2]실제로 한쪽은 포루프, 다른 한쪽은 잠시 루프인 내측 루프의 유형이 다른 두 루프의 성능도 다르다.
루프에 대한 내부가 관련된 경우보다 단위 시간당 더 많은 연산이 수행되는 것으로 관찰되었다.이는 동일한 수의 연산을 수행할 경우 내측 포 루프가 없는 연산보다 더 빨리 끝난다는 것을 의미한다.이것은 루프 최적화의 기계 또는 플랫폼 독립 기법이며, 시험한 여러 프로그래밍 언어와 컴파일러 또는 통역기에서 관찰되었다.내측 루프로서 잠시 루프의 경우, 어떤 경우에는 내측 루프가 없는 루프보다 더 느리게 수행되는 등 저조한 성능을 보였다.아래 파이톤으로 쓰여진 두 가지 예는 내측 루프와 내측 루프가 없는 동안 루프를 나타낸다.비록 둘 다 같은 루프의 종료 조건을 가지고 있지만, 첫 번째 예는 루프에 대한 내측 때문에 더 빨리 끝날 것이다.변수 innermax는 첫 번째 예에서 maxticketno 변수의 일부분이다.
, 한편 티켓노 * 이너맥스 < 맥스티케트노: 을 위해 j 에 범위(0, 이너맥스): 만일 (티켓노 * 이너맥스 + j) == 잭팟노: 돌아오다 티켓노 += 1
, 한편 티켓노 < 맥스티케트노: 만일 티켓노 == 잭팟노: 돌아오다 티켓노 += 1
참조
- ^ Ghezzi, C; Jazayeri, M (1996). Programming Language Concepts (3rd edn.). John Wiley & Sons.
- ^ Adewumi, Tosin (August 2018). "Inner loop program construct: a faster way for program execution". Open Computer Science. 8: 115–122. doi:10.1515/comp-2018-0004.