본문 바로가기
공부 일지/개인 공부 기록용

2022/07/27

by Joshbla 2022. 7. 28.

- String형 반환값을 갖는 재귀함수에서 새로운 입력값이 조건에 맞지 않는 경우 그 입력을 취소하고 뒤로 가고 싶었는데

return을 쓰자니 String 형을 리턴해줘야해서 까다로웠다.

그럴 때 null 값을 이용하여 해결하는 방법을 배웠다.

public String dfs(String str , int len){
	if (/**종료조건**/) return str;
	
    /** 조건can~~~~~**/
    for(int i =0;i<N;i++){
    	result = "~~"
        if(can){
    		String answer = dfs(result, len);
        	if(answer!=null) return answer;
    	}
    }
    return null;
}

정확한 원리는 모르겠지만

예를들어

12345 + 6 에서

6이 조건에 맞지않는경우 다시 뒤로 돌아가서 남아있는 과정을 거친다.

12346이 되고 6이 또 조건에 맞지않으므로 다시 뒤로 돌아가서

1235

대충 이런식으로 뒤로 돌아갈 수 있다.

 

정확한 원리를 알게되면 수정하도록 할 것이다.

'공부 일지 > 개인 공부 기록용' 카테고리의 다른 글

2022/08/03 [동기, 비동기, 블로킹, 논블로킹]  (1) 2022.08.03
2022/07/28  (0) 2022.07.28
2022/07/22  (0) 2022.07.22
2022/07/20  (0) 2022.07.21
2022/07/15  (0) 2022.07.15