Programming/Algorithm
-
모두의 알고리즘 with 파이썬 넷째 마당 연습문제Programming/Algorithm 2021. 3. 11. 14:39
13-1 def palindrome(s): a = [] for x in s: if x.isalpha(): a.append(x.lower()) n = len(a) for i in range(0, n): if a[i] != a[n-1-i]: return False return True print(palindrome("kayak")) # True print(palindrome("God's dog")) # True print(palindrome("God's dogs")) # False14-1 def find_student_name(s_dict, s_no): if s_no in s_dict: return s_dict[s_no] else: return "?" stu_dict = { 39: "Justi..
-
모두의 알고리즘 with 파이썬 셋째 마당 연습문제Programming/Algorithm 2021. 3. 5. 14:51
7-1 def search_list(a, x): n = len(a) list = [] for i in range(0, n): if x == a[i]: list.append(i) return list v = [17, 33, 18, 18, 58, 7, 33, 42] print(search_list(v, 18)) print(search_list(v, 33)) print(search_list(v, 900))7-2 O(n) 7-3 def student_name(stu_no, stu_name, x): n = len(stu_no) for i in range(0, n): if x == stu_no[i]: return stu_name[i] return "?" stu_no = [39, 14, 67, 105] stu_nam..
-
모두의 알고리즘 with 파이썬 첫째 마당 연습문제Programming/Algorithm 2021. 3. 2. 14:35
1-1 def squared(n): s = 0 for i in range(1, n + 1): s += i * i return s print(squared(10)) 1-2 O(n) 필요한 계산 횟수가 입력 크기 n에 비례하기 때문에 1-3 O(1) 필요한 계산 횟수가 입력 크기 n과 무관하므로, 계산 횟수는 무조건 6번 2-1 def find_min(a): n = len(a) min_val = a[0] for i in range(1, n): if a[i] < min_val: min_val = a[i] return min_val v = [17, 92, 18, 33, 58, 7, 33, 42] print(find_min(v)) 3-1 def grouping(a): n = len(a) for i in range..