Dev/Python 3

파이썬 알고리즘 - 삽입정렬

파이썬 알고리즘 - 삽입정렬< 그림 위키피디아 - https://ko.wikipedia.org/wiki/%EC%82%BD%EC%9E%85_%EC%A0%95%EB%A0%AC > 내가 푼 방식-> 모범 답안에 비해서 시간 복잡도가 높게 나왔다.def insertion_sort(my_list): for i in range(1, len(my_list)): for i2 in range(0, i): if my_list[i] < my_list[i2]: small = i2 break else: small = i if small != i: a = my_list[i] for j in range(i, small, -1): my_list[j] = my_list[j-1] my_list[j-1] = my_list[j-2] my_..

Dev/Python 2017.08.20

파이썬 알고리즘 - 패턴문제

파이썬 알고리즘 Python 알고리즘 다른 문제- 숫자 배열 알고리즘 단어 패턴 문자열(패턴) 하나와 문자열의 배열 하나가 주어집니다. 패턴 문자열의 각각의 문자 하나는, 두번째 문자열 배열의 각각의 문자열 하나에 대응 될 수 있습니다. 해당 배열이 해당 패턴으로 표현 되는지 아닌지의 여부를 확인하는 함수를 만들어 보세요. 예를 들어서, aabb 와 ['abc', 'abc', 'fgh', 'fgh'] 가 주어졌을 경우에는 함수가 True를 반환해야 합니다. 이 경우에는 a가 abc에, b가 fgh에 대응되도록 하면 배열을 해당 패턴으로 표현 하는 것이 가능하기 때문이죠.반면, aabb 와 ['abc', 'fgh', 'abc', 'fgh'] 가 주어졌을 경우에는 함수가 False를 반환해야 합니다.모든 문..

Dev/Python 2017.07.17

파이썬 알고리즘 - 숫자 배열에 관한 문제

파이썬 알고리즘 문제 Python 알고리즘 다른 문제 - 단어패턴 문제 숫자 배열문제 숫자들의 배열이 주어집니다. 이 배열은 길이 n을 가지며, 1부터 n-1까지의 숫자로 이루어져있습니다. 모든 숫자가 배열에 단 한번씩만 나타납니다. 그런데, 딱 하나의 수가 배열에 두번 등장합니다. 이 중복되는 숫자를 찾아내어 보세요. 예를 들어서, [1, 5, 2, 4, 5, 6, 3] 를 살펴봅시다. 배열의 길이는 7이며, 따라서 1~6까지의 숫자들이 한번씩 등장합니다. 그런데 5만 한번 더 등장했네요.따라서 이 경우에는5를 찾아내면 됩니다. 코드는 아래 def findDuplicate(nums): nums.sort() for i in range(len(nums) - 1): if (nums[i] == nums[i +..

Dev/Python 2017.07.13
반응형