요약

2219 단어 기타
귀속은 무엇입니까?귀속은 프로그램이 끊임없이 자신을 호출하는 것이다.
귀속은 직접 귀속과 간접 귀속으로 나뉜다.
• 직접 귀속: 함수는 실행 과정에서 그 자체를 호출합니다.
• 간접 귀속: 함수는 실행 과정에서 다른 함수를 호출하고 이 함수 호출 자체를 거친다.
귀속 4대 요소:
1. 귀환은 수출, 즉 종지점이 있어야 한다. 그렇지 않으면 계속 순환하고 자원 소모를 알 수 있다.
2. 문제가 줄어들다
3. 문제는 재귀속을 통해 해결될 수 있다
4. 하위 문제의 그룹 풀이 문제의 최종 풀이
예:
여덟 냥짜리 사과를 약간의 무게와 같은 몫으로 나누다.
1. 먼저 사과를 반으로 잘라 두 몫으로 나눈다.
2. 다시 두 몫을 반으로 무게의 반으로 나눈다.
3. 2단계 반복
4. 작은 몫이 한 냥이 될 때까지.
1. 최종 무게는 1인분당 1냥
2、매번 자른 것이 지난번 것보다 작다
3. 각 무게가 1량일 때 문제가 해결되고 각 하위 문제는 귀속 호출을 통해 해결할 수 있다.
4. 무게가 1냥이면 최종 결과다.
public static int count =1;
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        sliceApple(8,1);
    }

    public static void sliceApple(int weight,int times){

        if(weight <=1){
            return;
        }
        else{
            int getWeight = weight/2;
            count =count*2;
            System.out.println(" "+times+" :"+getWeight+"  , "+count+" ");
            times += 1;
            sliceApple(getWeight,times);
        }
    }

결과: 1차 등분 중량: 4량, 사과 2개, 2차 등분 중량: 2량, 사과 4개, 3차 등분 중량: 1량, 사과 8개로 나뉘었다.

좋은 웹페이지 즐겨찾기