2021/07/29 목요일

Gong Intaek·2021년 7월 29일
0

일상

목록 보기
48/1031
post-thumbnail

TIL


오늘 한 일


문제 풀이

Iterator for Combination. (medium)

주어진 문자를 주어진 숫자 크기로 가질수 있는 combination을 구하고 해당 결과물을 필요한때마다 순차적으로 내보내면서 다음 결과물이 있는지 여부를 판별 하는 구조를 작성해야한다.

combination을 구성 할 방법에는 재귀적인 방식과 반복을 잘고안해서 하는 방식이있을진데 현재 내머리로는 재귀적인 방식으로밖에 생각이 나지 않는다. 해서 그방향으로 문제를 풀었다. 재귀적인 방식은 구조가 간단하다.
우선 재귀 함수의 입력 값으로는 문자열 s, 길이 l, 그리고 문자 w로 임시로 명명한다. 함수 내부에서는 한번 움직일때 하나의 문자를 가져온다. 다만 가져올수 있는 문자는 주어진 길이외의 문자 전부가 가능하니 가능한 문자를 하나씩 순차적으로 가져올수 있게 구성해야한다. 하나의 문자가 선택되었다면 선택된 문자 뒤의 나머지를 다음 단계로 승계한다. 그리고 현재 선택된 문자를 w에 더하여 새로운 문자를 만들고 이 또한 승계 시키고 현재 길이에서 1을 빼서 승계한다.

현재 길이가 0이 되면 이제 오나성해야하는 문자의 크기에 맞춰진 것이다. 따라서 w를 배열에 감싸서 돌려주고 돌려 받은 값은 결과에 차곡차곡 쌓여서 리턴 되게 된다.
그리고 그렇게 모든 경우에 대해 돌려받으면 combination 결과물이 완성된다.


오늘은...

  • 어제 코드 작성하고 깃헙에 올리지 못한 것을 오늘 확인 함.

  • 해서 아쉽게도 잔디에 구멍이 생김.

  • 피곤하여 산책 쉼.

  • 기본적인 재구성 정리 진행.

  • 결과물을 바탕으로 정리는 다음에 예정.

  • 방향성에대해 욕심을 버려야 겟다고 생각함.

  • 많이 부족하고 더 많은것을 하고 싶은 생각만 가득하여 실제적인 진행이 되지 않음.

  • 차근차근 진행 해봐야 겠다.

profile
개발자가 되기위해 공부중

0개의 댓글