재귀 기법을 이용하여 리스트의 길이를 구해야 하는 경우에는 사용자가 정의한 방법을 사용하며, 단순 인덱싱 기법을 사용합니다.
목록은 이기종 값(즉, 정수, 부동 소수점, 문자열 등과 같은 모든 데이터 유형의 데이터)을 저장하는 데 사용할 수 있습니다.
재귀는 더 큰 문제의 작은 비트의 출력을 계산하고 이러한 비트를 결합하여 더 큰 문제에 대한 솔루션을 제공합니다.
예시
아래는 동일한 데모입니다 -
def list_length(my_list): if not my_list: return 0 return 1 + list_length(my_list[1::2]) + list_length(my_list[2::2]) my_list = [1, 2, 3, 11, 34, 52, 78] print("The list is :") print(my_list) print("The length of the string is : ") print(list_length(my_list))
출력
The list is : [1, 2, 3, 11, 34, 52, 78] The length of the string is : 7
설명
- 목록을 매개변수로 사용하는 'list_length'라는 메서드가 정의되어 있습니다.
- 목록이 없으면 메서드는 0을 반환합니다.
- 그렇지 않으면 인덱싱되어 1씩 증가하고 출력으로 반환됩니다.
- 함수 외부에 목록이 정의되어 콘솔에 표시됩니다.
- 이 목록을 매개변수로 전달하여 메서드를 호출합니다.
- 출력은 콘솔에 표시됩니다.