C 언어, 교체와 귀속
콘셉트
교체(iteration)는 피드백 과정을 반복하는 활동으로 그 목적은 보통 필요한 목표나 결과에 접근하기 위한 것이다.매번 과정에 대한 중복을'교체'라고 하는데, 매번 교체를 통해 얻은 결과는 다음 교체의 초기 값으로 삼는다.귀속 (recursion) 은 프로그램이 자신의 프로그래밍 기술을 호출하는 것이다.
*교체와 귀속의 본질은 모두 하나의 방법이다.귀속 함수는 말 그대로 이 함수는 귀속이라는 방법을 운용했다.
개인적 이해
교체: 순환을 통해 한 과정을 끊임없이 반복한다. 이 과정은 한 개 또는 몇 개의 낡은 값을 이 과정을 통해 한 개 또는 몇 개의 새로운 값을 얻는 과정이고 얻은 새로운 값은 다음 같은 과정의 낡은 값을 충당하여 순환이 자신이 원하는 결과를 얻을 때까지 한다.한 번 순환해서 실행하는 과정은 한 번의 교체이다.**교체는 순환이 아니다. 교체는 순환을 필요로 한다.하나의 과정이 끝난 후에 다시 이 과정을 진행하는 것이 특징이다.그것의 사고방식은 앞으로 나아가서 추리하는 것이다.
예를 들어 폴더 A에는 폴더 B가 있고 폴더 B에는 폴더 C가 있고 폴더 C에는 폴더 D가 있다.폴더 D를 얻으려면 폴더 A를 열면 폴더 B를, 폴더 B를 열면 폴더 C를, 폴더 C를 열면 폴더 D를 얻는 방법이 있습니다.
// = +
B = A +
C = B +
D = C+
이동후 추리란 A를 통해 B를, B를 통해 C를, C를 통해 D를 찾는 것이다.
등호 오른쪽에 있는 폴더는 열려는 폴더(이전 값), 등호 왼쪽에 있는 폴더는 이전 폴더를 열기 위한 작업(새 값)을 의미합니다.낡은 폴더를 열고 새 폴더를 얻는 것은 교체 과정이다.
개인적 이해
귀속: 이 과정을 실행하는 과정에서 다시 호출해야 합니다.프로세스 연산에서 프로세스를 다시 사용하는 것이 특징입니다.*그의 사고방식은 뒤에서 앞으로 추리하는 것이다.
역시 이상의 예를 들자.
// = +
D = ( C = ( B = A + ) + ) +
뒤에서 앞으로 추리란 D를 찾으려면 C를, C를 찾으려면 B를, B를 찾으려면 A를 찾는다.
교체와 귀속 1.귀속 중에는 반드시 교체가 있고, 교체 중에는 반드시 귀속이 있는 것은 아니다.(기억해라, 흥미가 있으면 귀속을 찾아서 반복해서 시험해 보자) 2.교체할 수 있으면 귀환을 쓰지 마라.차례로 돌아가면 넘치기 쉽다.왜?역시 상기 예를 들면, 마지막 단계까지 반복해서 집행하면 계산만 할 수 있다
D = C+
마지막 단계로 돌아가다
D = ( C = ( B = A + ) + ) +
교체와 귀속의 횟수가 많을수록, 우리는 교체는 여전히 간단한 식이 필요하고, 귀속식은 갈수록 길어지는 것을 발견할 수 있다.종이 위에 이 두 식을 쓰면, 귀속식이 차지하는 곳이 크다는 것을 발견할 수 있습니까?컴퓨터에 메모리를 저장하는 것도 마찬가지다.
넘침, 여기서 간단하게 말하자면 메모리는 이렇게 크기이고 귀속 횟수가 많을수록 식이 길수록 차지하는 메모리가 많다.식이 메모리에 넣을 수 없을 정도로 길어지면 넘친다.
왜 귀속을 사용해야 합니까? 귀속 컴파일러를 사용하면 프로그램을 간결하고 뚜렷하게 할 수 있습니다.현대 프로그램은 높은 가독성과 낮은 자원의 점용을 요구하는데 귀환은 이 두 가지를 완전히 위반하기 때문에 일반적으로 자원을 점용하지 않고 보편적으로 운용하는 곳에 활용된다.
※ 인터넷 자료와 자신의 총결을 참고하여 잘못이나 건의가 있으면 제출해 주십시오. 수정이나 보충을 해 드리겠습니다. 감사합니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.