python3

    [Python] heapq 사용법

    [Python] heapq 사용법 (글쓴날 : 2020.04.26) * 이 글은 글쓴이가 공부한 내용을 정리하며 올리는 글입니다. * Python3를 기준으로 작성되었습니다. Python heapq 사용법 1) heapq란? heapq란 자료구조 queue의 일종으로, queue의 내부 구조가 heap으로 이루어져 있다고 보시면 됩니다. heapq는 일반 queue와 마찬가지로 추가(push), 삭제(pop) 등의 기능을 하지만, heap 구조를 유지하기 위해 추가(push) 및 삭제(pop) 시 O(log n)의 시간 복잡도가 걸리게 됩니다. 보통 우선순위 큐를 구현하기 위해 사용되며, heapq 모듈의 함수들은 Min Heap 기준으로 설계되어 있으므로 주의해야 합니다. 2) heapq 사용법 (1)..

    [Python] deque 사용법

    [Python] deque 사용법 (글쓴날 : 2020.03.30) * 이 글은 글쓴이가 공부한 내용을 정리하며 올리는 글입니다. * Python3를 기준으로 작성되었습니다. Python deque 사용법 1) deque이란? deque이란 collections 모듈에 속해있으며 단방향 흐름이던 기존 Queue 자료구조와 달리 앞과 뒤(왼쪽과 오른쪽) 양방향에서 삽입 삭제를 할 수 있는 자료구조입니다. (한글 발음은 덱입니다.) 저의 경우, 알고리즘 문제를 풀기 위해 큐 자료구조를 쓸 때 Python의 Queue를 사용하려다 보니 queue.Queue()의 경우 멀티스레딩을 위한 큐여서 시간 효율이 좋지 않아 deque을 찾게 되었습니다. (보통 BOJ, LeetCode 같은 PS에서 Python으로 큐..

    [Python] Python 소개와 설치 방법

    [Python] Python 소개와 설치 방법 (글쓴날 : 2020.02.14) * 이 글은 글쓴이가 공부한 내용을 정리하며 올리는 글입니다. 1. Python 소개 1) Python이란? Python은 네덜란드의 개발자 귀도 반 로섬(Guido van Rossum)이라는 분이 개발하여 1991년 세상에 공개된 언어입니다. Over six years ago, in December 1989, I was looking for a "hobby" programming project that would keep me occupied during the week around Christmas. My office (a government-run research lab in Amsterdam) would be clos..