Python/파이썬 함수

Python/파이썬 함수

[파이썬] heapq 힙큐 사용하기

Heapq Document Python docs homepage 1. Heap 이란? 힙은 최댓값과 최솟값을 찾는 연산에 특화된 완전 이진트리이다. 힙의 종류로는 최소힙과 최대힙이 있는데, 자료값이 낮은 것이 루트로 오면 최소힙, 자료값이 높은 것이 루트로 오면 최대힙이라고 한다. 이를 이용해 우선순위를 쉽게 정할 수 있다는 장점이 있다. 이런 우선순위 힙을 이용한 대표적인 예로는 우선순위 힙을 사용한 개선된 다익스트라 알고리즘이다. 파이썬에서 힙을 사용하기위해 heapq를 선언하는 방법은 아래와 같다. import heapq 2. heapq의 메소드 heapq.heapify(iterable) 원래 있던 리스트를 힙으로 사용하기위해서는 먼저 힙화(heapify)를 진행해야하는데, 위의 메소드를 사용해 쉽..

Python/파이썬 함수

[파이썬] any()와 all()

1. any() any는 반복 가능한 자료형을 파라미터로 받으며, 이 파라미터 중에 하나라도 True면 True를 반환한다. 만약 모두 False라면 False를 반환하는 함수이다. OR연산과 비슷한 성격을 갖고 있다. 아래는 True를 반환하는 예이다. 두 번째 예시를 보면 0, False는 거짓이지만 1이 참이기 때문에 True를 리턴하는 것을 확인할 수 있다. any([1,2,3,4,5]) # True 반환 any([0, False, 1]) # True 반환 0, ""(빈 문자열), [](빈 배열) 모두 False를 의미하기에 모두 False를 반환한다. any([0, False, 0]) # False 반환 any([]) # False 반환 any(["", 0]) # False 반환 generato..

Python/파이썬 함수

[파이썬] 배열에 사용되는 함수

1. append() 배열에 요소를 추가한다. arr = [1, 2, 3] arr.append(4) arr.append(3) print(arr) -출력값 > [1, 2, 3, 4, 3] 2. remove() 해당 요소를 제거한다. myWord = ["123", "456", "789"] myWord.remove("456") print(myWord) - 출력값 > ['123', '789'] 3. set() 중복 제거 가능 arr = [1, 1, 1, 2, 2, 3, 4, 5, 5, 6, 7, 7] arr = set(arr) print(arr) arr = list(arr) print(arr) - 출력값 > {1, 2, 3, 4, 5, 6, 7} > [1, 2, 3, 4, 5, 6, 7] 4. index() 해..

Python/파이썬 함수

[파이썬] 파이썬에서 스택 & 큐 구현하기

1. 스택 스택이란? 스택은 한 쪽 끝에서만 자료를 넣거나 뺄 수 있는 선형 구조(LIFO - Last In First Out)으로 되어 있다. 자료를 넣는 것을 '밀어넣는다' 하여 푸쉬(push)라고 하고 반대로 넣어둔 자료를 꺼내는 것을 팝(pop)이라고 하는데, 이때 꺼내지는 자료는 가장 최근에 푸쉬한 자료부터 나오게 된다. 이처럼 나중에 넣은 값이 먼저 나오는 것을 LIFO 구조라고 한다. 반대로 FILO(First In Last Out)라고 하기도 한다. 파이썬으로 구현 append() 메소드와 pop()메소드만 사용할 수 있으면 간단히 리스트로도 구현할 수 있다. 아래의 예시를 보자 stack = [] stack.append(1) stack.append(2) stack.append(3) sta..

Python/파이썬 함수

[파이썬] 내가 보려고 만든 문자열 함수 2

1. rjust() 원하는 문자를 왼쪽부터 채워 본래 값을 오른쪽으로 정렬해서 반환해준다. arr = ['101', '0011', '11111'] print(arr[0].rjust(5, "0")) print(arr[1].rjust(7, "0")) print(arr[2].rjust(5, "0")) -결과값 >> 00101 >> 0000011 >> 11111 2. ljust() 원하는 문자를 오른쪽부터 채워 본래 값을 왼쪽으로 정렬해서 반환해준다. arr = ['101', '0011', '11111'] print(arr[0].ljust(5, "0")) print(arr[1].ljust(7, "0")) print(arr[2].ljust(5, "0")) -결과값 >> 10100 >> 0011000 >> 1111..

Python/파이썬 함수

[파이썬] itertools 사용하는 법 - 경우의 수

1. 경우의 수 permutations() - 순열 순열은 순서를 고려해서 뽑는 경우의 수다. nPr 로 쓰이는데 이를 풀어서 말하면 n개 중 순서를 고려하여 r개를 뽑는 것을 말한다. -예시 num = [2,1,3,4,1] result = list(itertools.permutations(num, 2)) - 결과값 >> [(2, 1), (2, 3), (2, 4), (2, 1), (1, 2), (1, 3), (1, 4), (1, 1), (3, 2), (3, 1), (3, 4), (3, 1), (4, 2), (4, 1), (4, 3), (4, 1), (1, 2), (1, 1), (1, 3), (1, 4)] 1이 2개 있기때문에 중복된 결과가 나온다. combinations() - 조합 조합이라고 하면 nC..

gakko
'Python/파이썬 함수' 카테고리의 글 목록