컴퓨터프로그래밍

재귀 -이 무엇입니까? 재귀 프로그래밍 (예)

재귀는 그 자체로 흥미로운 이벤트입니다,하지만 그들은 어떤 경우에 특히 중요 프로그래밍에 있습니다. 그들에 직면 처음으로, 사람들이 상당히 많은 수의 문제에 대한 이해와 있습니다. 이것은 "재귀"가 사용되는 상황에 따라 용어의 잠재적 인 사용의 거대한 필드에 기인한다. 그러나이 문서가 가능 오해와 혼동을 피하기 위해 도움이 될 것으로 기대된다.

일반적으로 "재귀"는 무엇입니까?

단어 "순환"는 적용되는 지역에 의존하는 값의 범위를 갖는다. 다음과 같이 유니버설 지정은 다음과 같습니다 재귀 - 객체 자신이 정의 이미지, 개체 또는 프로세스의 설명. 그들은 단지 객체가 자신의 일부 경우에 가능합니다. 자신의 방법으로는 재귀 수학, 물리학, 프로그래밍 및 기타 과학 분야의 수를 정의합니다. 실용적인 응용 프로그램은 정보 시스템 및 물리적 실험에서 발견된다.

프로그래밍에서 재귀 무엇을 의미?

절차 나 프로그램 기능 자체를 호출 할 때 프로그래밍에서 재귀 상황 또는 재귀는 순간을했다. 소리를 수도로 프로그래밍을 배우기 시작하는 사람들을위한 이상, 그것은 이상한 아무것도 없다. 재귀가 명심 - 그것은 어려운 일이 아니다, 경우에 그들은 사이클을 대체합니다. 올바르게 설정 컴퓨터가 프로시 저나 함수를 호출하는 경우, 그는 단지 그녀를 수행하기 시작합니다.

재귀는 유한 또는 무한 될 수 있습니다. 에 먼저도 종료의 조건이어야한다, 그 자체가 원인을 멈췄다. 값의 감소는 가변적 일 수 있고, 소정 값에 도달하면, 특정 목표를 달성하기 위해 필요에 따라, 후속하는 코드 통화 완료 소프트웨어 / 전환을 멈춘다. 무한 재귀가 호출된다는 것을 의미하여, 컴퓨터 또는 컴퓨터에서 작동하는 프로그램으로 오랫동안 작동합니다.

또한이 개 기능을 사용하여 조직 어려운 재귀 수 있습니다. 컴퓨터 논리를 논리 상황의 복잡한 시리즈의 탈출구 - 거기가와 B A가 B로 코드를 호출하는 기능을 가지고 있으며, B는 차례로, 복잡한 A. 재귀을 수행하는 컴퓨터의 필요성을 지적하자.

이 라인의 독자가 프로그래밍 사이클을 연구하면, 아마 이미 그들과 재귀 사이의 유사성을 발견한다. 일반적으로, 그들은 실제로 유사하거나 동일한 작업을 수행 할 수 있습니다. 재귀의 도움으로 시뮬레이션 작업주기를 수행하는 것이 편리하다. 자신이 사용하는 사이클이 아닌 매우 편리 경우에 특히 유용합니다. 소프트웨어 구현을 운전하는 것은 다른 높은 수준의 프로그래밍 언어에서 매우 다르지 않다. 그러나 C에서 "파스칼"및 재귀 또는 다른 언어로 재귀는 자신의 특성을 가지고있다. 그녀는 성공적으로 "어셈블러"으로 낮은 수준의 언어로 구현,하지만 더 문제와 시간이 소요됩니다 수 있습니다.

나무 재귀

프로그래밍의 "나무"는 무엇입니까? 이것은 적어도 하나 개의 노드로 이루어진 유한 집합이다 :

  1. 초기 특수 노드를 가지고, 전체 트리의 루트를했다.
  2. 나머지 노드는 같은 시간에 그들은 또한 나무입니다, 제로, 분리 된 집합 다른 양입니다. 조직의 이러한 모든 형태의 메인 트리의 서브 트리를했다.

즉 : 나무는 더 많은 나무를 포함하는 하위 트리하지만, 이전의 나무보다 작은 숫자가 포함되어 있습니다. 노드 중 하나가 이동할 수있을 것입니다 때까지 계속, 그리고 재귀의 끝을 의미합니다. 이 다이어그램에 대한 또 하나의 뉘앙스입니다 : 일반 나무 아래에서 위로 성장, 그리고 그들은 프로그래밍 반대로 그려집니다. 더 지속이없는 사이트라는 말 노드. 표기의 편의를 위해, 사용 계보 용어 (조상, 어린이)의 용이성.

그것은 프로그래밍에 사용되는 이유는 무엇입니까?

프로그래밍에서 재귀 그의 사용은 복잡한 작업의 범위에 발견했다. 당신이 하나의 전화를 확인하려면 쉽게 통합 사이클의 사용하지만, 경우에 두 개 이상의 반복은 체인 방지하고 나무의 형태로 구현을하고, 재귀 적 상황이 적용됩니다. 문제의 다양한 클래스의 경우이 방법으로 처리 컴퓨팅의 조직은 자원 소비의 측면에서 최고입니다. 따라서, "파스칼"또는 임의의 다른 고레벨 프로그래밍 언어에 상관없이 외부 재귀 호출의 수의 조건에 대한 기능 또는 절차 호출이다. 즉, 프로그램은 서브 루틴 하나만 호출 할 수 있지만, 어떤 소정의 토크까지 일 것이다. 어떤면에서 그것의 사용 특성을 가진 아날로그 루프입니다.

다양한 프로그래밍 언어의 차이 재귀

구현의 일반적인 도면 및 각 경우에있어서의 특정 애플리케이션에도 프로그래밍 재귀 자체 특성을 갖는다. 이 필요한 자료에 대한 검색에 어려움을 초래할 수 있습니다. 그러나 항상 염두에 두어야 : 프로그래밍 언어는 따라서 함수 또는 프로 시저, 호출 재귀 경우 -이 가능하다. 그러나 가장 큰 차이는 낮고 높은 프로그래밍 언어를 사용할 때 발생합니다. 이 프로그램의 구현에 특히 가능성이다. 실행은 궁극적으로 따라 서면 재귀, 작업이 설정되어 있는지 여부에 따라 달라집니다. 기능 및 사용 절차는 다르지만, 그들의 목적은 항상 동일합니다 - 자신을 호출합니다.

재귀는 - 그것은 간단합니다. 기사의 내용을 기억하기 쉬운?

초보자가 처음에는 어려울 수 있습니다 이해, 그렇게하기 위해 당신은 재귀의 예제, 또는 적어도 하나가 필요합니다. 따라서 프로그램의 목표를 달성하기 위해이 메커니즘의 본질을 이해하는 데 도움이 될 것입니다 일상 생활의 작은 예를 제공해야합니다. 두 개 이상의 거울을 가지고 나머지는 모두 단일 디스플레이에 있도록 배치합니다. 이 거울은 무한의 효과를 만들어, 반복적으로 자신을 반영하고 있음을 알 수있다. 여기에 재귀 - 인, 비 유적으로 말해서, 반사 (많은입니다). 당신이 볼 수 있듯이, 이해하기 쉽고, 그것은 할 것입니다. 프로그래밍 재료의 연구는, 우리는 그 재귀를 볼 수 있습니다 - 그것은 아주 쉽게도 행할 작업입니다.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 ko.birmiss.com. Theme powered by WordPress.