본문 바로가기

전체 글

(60)
[코드잇][알고리즘의 정석]토픽 2: 재귀 함수 연습-05. 이진 탐색 재귀로 구현해보기 [코드잇][알고리즘의 정석]토픽 2: 재귀 함수 연습-05. 이진 탐색 재귀로 구현해보기 링크: https://www.codeit.kr/learn/courses/algorithms/1133 코딩이 처음이라면, 코드잇 월 3만원대로 Python, JavaScript, HTML/CSS, Java 등 1,600개 이상 프로그래밍 강의를 무제한 수강하세요 www.codeit.kr:443 문제 이진 탐색 알고리즘을 이미 반복문으로는 구현해 보셨죠? 이번에는 재귀적으로 문제를 해결해 보세요. 반드시 재귀(recursion)의 개념을 사용하셔야 합니다. 코드 구현이 꽤 어려우니, 천천히 고민해 보시기 바랍니다. 다른 재귀 문제를 풀 때와 마찬가지로 base case와 recursive case를 생각해 내는 것이 핵..
[코드잇][알고리즘의 정석]토픽 2: 재귀 함수 연습-04. 리스트 뒤집기 [코드잇][알고리즘의 정석]토픽 2: 재귀 함수 연습-04. 리스트 뒤집기 링크: https://www.codeit.kr/learn/courses/algorithms/1132 코딩이 처음이라면, 코드잇 월 3만원대로 Python, JavaScript, HTML/CSS, Java 등 1,600개 이상 프로그래밍 강의를 무제한 수강하세요 www.codeit.kr:443 문제 파라미터로 리스트 some_list를 받고, 뒤집힌 리스트를 리턴해 주는 재귀 함수 flip을 쓰세요. 반복문은 쓰면 안됩니다! # 파라미터 some_list를 거꾸로 뒤집는 함수 def flip(some_list): # 코드를 입력하세요. # 테스트 some_list = [1, 2, 3, 4, 5, 6, 7, 8, 9] some_lis..
[코드잇][알고리즘의 정석]토픽 2: 재귀 함수 연습-03. 자릿수 합 [코드잇][알고리즘의 정석]토픽 2: 재귀 함수 연습-03. 자릿수 합 링크: https://www.codeit.kr/learn/courses/algorithms/1131 코딩이 처음이라면, 코드잇 월 3만원대로 Python, JavaScript, HTML/CSS, Java 등 1,600개 이상 프로그래밍 강의를 무제한 수강하세요 www.codeit.kr:443 문제 파라미터로 정수값 n을 받고 n의 각 자릿수의 합을 리턴해주는 재귀함수 sum_digits를 쓰세요. 반복문을 쓰지 말고, 재귀(recursion)의 개념을 활용해주세요! # n의 각 자릿수의 합을 리턴 def sum_digits(n): # 코드를 작성하세요. # 테스트 print(sum_digits(22541)) print(sum_digi..
[코드잇][알고리즘의 정석]토픽 2: 재귀 함수 연습-02. 숫자 합 코드잇/알고리즘의 정석[코드잇][알고리즘의 정석]토픽 2: 재귀 함수 연습-02. 숫자 합 링크: https://www.codeit.kr/learn/courses/algorithms/1130 코딩이 처음이라면, 코드잇 월 3만원대로 Python, JavaScript, HTML/CSS, Java 등 1,600개 이상 프로그래밍 강의를 무제한 수강하세요 www.codeit.kr:443 설명 n번째 삼각수(triangle number)는 자연수 11부터 n까지의 합입니다. 파라미터로 정수값 n을 받고 n번째 삼각수를 리턴해주는 재귀 함수 triangle_number를 쓰세요. n은 11 이상의 자연수라고 가정합시다. 함수 안에 반복문은 쓰면 안됩니다! # 1부터 n까지의 합을 리턴 def triangle_nu..
[코드잇][알고리즘의 정석]토픽 2: 재귀 함수 연습-01. 피보나치 수열 [코드잇][알고리즘의 정석]토픽 2: 재귀 함수 연습-01. 피보나치 수열 링크: https://www.codeit.kr/learn/courses/algorithms/1129 코딩이 처음이라면, 코드잇 월 3만원대로 Python, JavaScript, HTML/CSS, Java 등 1,600개 이상 프로그래밍 강의를 무제한 수강하세요 www.codeit.kr:443 문제 피보나치 수열이란 첫 번째 항과 두 번째 항이 11이고, 세 번째 항부터는 바로 앞의 두 항의 합으로 정의된 수열입니다. 예를 들어서 세 번째 항은 첫 번째 항(11)과 두 번째 항(11)을 더한 22이며, 네 번째 항은 두 번째 항(11)과 세 번째 항(22)을 더한 33이 될 것입니다. 이러한 방식으로 피보나치 수열의 첫 1010개 ..
[코드잇][알고리즘의 정석]토픽 1: 하나의 문제, 여러 가지 알고리즘-04. 이진 탐색 구현해보기 [코드잇][알고리즘의 정석]토픽 1: 하나의 문제, 여러 가지 알고리즘-04. 이진 탐색 구현해보기 링크: https://www.codeit.kr/learn/courses/algorithms/1028 코딩이 처음이라면, 코드잇 월 3만원대로 Python, JavaScript, HTML/CSS, Java 등 1,600개 이상 프로그래밍 강의를 무제한 수강하세요 www.codeit.kr:443 문제 ‘이진 탐색(Binary Search)’ 알고리즘을 사용해서 어떤 원소가 리스트 안에 포함되어 있는지 확인하려고 합니다. 이진 탐색 알고리즘은 선형 탐색 알고리즘과 달리, 정렬된 리스트를 전제로 합니다. 정렬된 리스트가 아니면 이 알고리즘은 적용이 불가능합니다. 왜 이 알고리즘의 이름이 ‘이진 탐색’일까요? 1회..
[코드잇][알고리즘의 정석]토픽 1: 하나의 문제, 여러 가지 알고리즘-03. 선형 탐색 구현해보기 [코드잇][알고리즘의 정석]토픽 1: 하나의 문제, 여러 가지 알고리즘-03. 선형 탐색 구현해보기 링크: https://www.codeit.kr/learn/courses/algorithms/1009 코딩이 처음이라면, 코드잇 월 3만원대로 Python, JavaScript, HTML/CSS, Java 등 1,600개 이상 프로그래밍 강의를 무제한 수강하세요 www.codeit.kr:443 선형탐색 '선형 탐색(Linear Search)' 알고리즘을 사용해서 어떤 원소가 리스트 안에 포함되어 있는지 확인하려고 합니다. 선형 탐색이란, 리스트의 처음부터 끝까지 순서대로 하나씩 탐색을 진행하는 알고리즘입니다. 파라미터로 탐색할 값 element와 리스트 some_list를 받는 함수 linear_search..
[코드잇][알고리즘의 정석]토픽 1: 알고리즘이란?-05. 선수 과제 [코드잇]알고리즘의 정석 (토픽 1): 알고리즘이란?-05. 선수 과제 링크: https://www.codeit.kr/learn/courses/algorithms/964 코딩이 처음이라면, 코드잇 월 3만원대로 Python, JavaScript, HTML/CSS, Java 등 1,600개 이상 프로그래밍 강의를 무제한 수강하세요 www.codeit.kr:443 팔린드롬 문제 설명 "토마토"나 "기러기"처럼 거꾸로 읽어도 똑같은 단어를 팔린드롬(palindrome)이라고 부릅니다. 문자열 word가 팔린드롬인지 확인하는 함수 is_palindrome를 쓰세요. is_palindrome은 word가 팔린드롬이면 True를, 팔린드롬이 아니면 False를 리턴합니다. def is_palindrome(word)..