반응형
250x250
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- oracleapex
- 계정계
- 코딩테스트
- 디렉토리계층구조
- Pass By Value
- 채널계
- 모놀리식
- SQL
- 맥북환경설정
- 오라클
- jdk17
- 학점은행제
- it자격증
- DB
- 맥북
- 의사결정나무모형
- MSA
- 코어뱅킹
- 학점은행제무료강의
- 컴퓨터공학학사취득
- jdk
- 개인프로필스튜디오창업
- python
- Homebrew
- fastapi
- 렌탈스튜디오창업
- 프로그래머스
- 은행IT
- union
- 맥북셋팅
Archives
- Today
- Total
개발머해니
[파이썬] 뒤집힌 리스트 - 재귀 함수 본문
728x90
반응형
실습 설명
파라미터로 리스트 some_list를 받고, 뒤집힌 리스트를 리턴해 주는 재귀 함수 flip을 쓰세요.
반복문은 쓰면 안됩니다!
전역변수를 잡아서 푸는 방법 : pop(), append()
# 파라미터 some_list를 거꾸로 뒤집는 함수
flip_list = []
def flip(some_list):
# 여기에 코드를 작성하세요
if len(some_list) == 0 :
return flip_list
flip_list.append( some_list.pop() )
return flip(some_list)
# 테스트 코드
some_list = [1, 2, 3, 4, 5, 6, 7, 8, 9]
some_list = flip(some_list)
print(some_list)
인덱싱 활용하기
# 파라미터 some_list를 거꾸로 뒤집는 함수
flip_list = []
def flip(some_list):
# base case
if len(some_list) == 0 || len(some_list) == 1 :
return some_list
# recursive case
return some_list[-1:] + flip(some_list[:-1])
"""
ex) some_list = [1, 2, 3, 4, 5, 6, 7, 8, 9]
some_list[-1:] = [9]
some_list[:-1] = [1, 2, 3, 4, 5, 6, 7, 8]
"""
# 테스트 코드
some_list = [1, 2, 3, 4, 5, 6, 7, 8, 9]
some_list = flip(some_list)
print(some_list)
[9, 8, 7, 6, 5, 4, 3, 2, 1]
728x90
반응형
'알고리즘' 카테고리의 다른 글
[파이썬] 카드 뭉치 최대 조합 - 브루트포스 ★ (0) | 2023.09.16 |
---|---|
[파이썬] 하노이의 탑 - 재귀함수 ★ (1) | 2023.09.16 |
[파이썬] 각 자릿수의 합 - 재귀 함수 (0) | 2023.09.12 |
[파이썬] 삼각수(숫자합) - 재귀함수 (0) | 2023.09.11 |
[파이썬] 피보나치 수열 - 재귀함수 (0) | 2023.09.11 |