BFS : 파이썬으로 이해하는 BFS

파이썬으로 이해하는 bfs

BFS 란? BFS(Breadth First Search)는 그래프에서 발생하는 사건들을 검사 혹은 처리하기 위해 탐색하는 방법 중 하나 입니다. BFS는 그래프를 수준별로 탐색하여 다음 수준으로 이동하기 전에 주어진 노드의 모든 인접 노드를 방문하는 그래프 순회 알고리즘입니다. BFS vs DFS BFS와 같은 탐색 알고리즘에서 가장 먼저 비교되는 게 DFS인데요 BFS는 레벨별로 그래프를 탐색하여 다음 레벨로 이동하기 전에 주어진 … Read more

파이썬 deque : 큐 (Queue) 개념과 사용법

파이썬 deque

큐는 FIFO(선입선출) 원칙을 따르는 데이터 구조입니다. (“파이썬 deque”가 queue의 일종) 사람들이 줄을 서서 기다리게 queue라고 생각하시면 됩니다. 먼저 도착한 사람이 가장 먼저 빠져나갑니다. 실제로 “queue”는 대기줄을 의미하는 단어입니다. queue에서 요소는 후면(끝)에 추가되고 전면(전면)에서는 제거됩니다. 아래 그림을 확인해주세요. 큐 (Queue)는 언제 사용하는 걸까? 큐 자료구조의 특성에 맞게 시퀀스의 양쪽 끝에서 효율적인 삽입 및 삭제 작업이 중요한 … Read more

PyPy : 파이썬 (CPython)과의 차이점

pypy

분명 동일한 파이썬 언어인데 코딩 테스트 사이트를 보면 Python으로 해석하는 게 있고 “PyPy“로 돌리는 게 있습니다. 둘의 차이가 무엇인지 궁금즘이 생겨 공부하게 되었습니다. 다재다능한 프로그래밍 언어인 Python은 단순성과 가독성으로 수많은 애플리케이션을 지원하죠. 그러나 프로젝트 규모가 커짐에 따라 성능 개선의 필요성이 생겨나게 되었습니다. 이에 따라 등장 한 것이 Python용 동적 언어 컴파일러인 “PyPy” 입니다. PyPy란? PyPy는 … Read more

파이썬 hashlib, secret : 파이썬 암호 해싱 라이브러리

파이썬 hashlib 라이브러리는 해시 함수들을 구현한 모듈입니다. 다양한 해시 알고리즘을 지원합니다. “파이썬 hashlib”에서 사용 가능한 해시 알고리즘 확인 hashlib 모듈은 현재 시스템에서 사용 가능한 해시 알고리즘을 확인할 수 있습니다. SHA-256 사용 예제 SHA-256은 보안적으로 강력한 해시 함수 중 하나입니다. encode() 메서드는 문자열을 바이트로 변환합니다.hexdigest() 메서드는 해시된 결과를 16진수 문자열 형태로 얻습니다. 이는 일반적으로 해시 값을 … Read more

파이썬 shutil 라이브러리 : 파일 및 디렉토리 다루기 3

파이썬 shutil 라이브러리는 파일 및 디렉토리 작업을 위한 유용한 함수들을 제공하는 파이썬 표준 라이브러리 중 하나입니다. shutil 라이브러리는 파일 및 디렉토리 관리를 보다 쉽게 처리하기 위한 고수준의 인터페이스를 제공합니다. 단순 파일명 변경, 복사, 이동 뿐만 아니라 압축 파일의 압축 및 해제, 동기화, 권한 등을 처리할 수 있는 기능이 있습니다. 파일 및 디렉토리 관리 요약 정리 … Read more

파이썬 glob 라이브러리 : 파일 및 디렉토리 다루기 2

“파이썬 glob” 라이브러리는 os 라이브러리의 기능과 마찬가지로 파일과 디렉토리를 검색하는 데 사용할 수 있습니다. os 라이브러리와 다른점은 파일 경로 패턴 매칭을 이용하여 지정된 패턴에 맞는 파일이나 디렉토리를 검색하는 데 사용된다는 점입니다. glob은 와일드카드 문자(*)를 사용하여 경로를 패턴화하고, 해당 패턴에 맞는 파일 목록을 반환할 수 있습니다. 파이썬 glob 기본 사용법 pathname 인자에 path를 패턴화 해서 입력하면 … Read more

파이썬 정규표현식 : 정규표현식 정리, 패턴 모음

정규표현식(Regular Expression)은 특정한 규칙을 가진 문자열의 패턴을 표현하는 문자열입니다. 아주 처음 “파이썬 정규표현식” 개념을 마주했을 때는 한 줄기의 빛이였습니다. “그 때는 파이썬 최고야 공부를 시작하길 잘했어” 라며 스스로를 칭찬까지 했습니다…ㅎ. 물론 정규표현식 개념은 파이썬 말고도 다른 언어에서도 존재하며 곳곳에서 많이 사용됩니다. 저는 파이썬이 주언어라 파이썬에서 많이 사용했는데요. 이메일 형식의 판단, 전화번호 형식 판별, 숫자로만 이루어진 … Read more

파이썬 ALL, ANY : 조건 따지는 함수

파이썬 all, any 함수는 파이썬의 내장 함수로, 각각 모든 요소가 참인지 검사하거나 어느 하나라도 참인지 검사하는 데 사용됩니다. SQL에도 유사한 ALL, ANY가 있지만 SQL에서는 연산자로 쓰이는데요. 파이썬에서는 all(), any() 함수가 어떻게 쓰이는지 정리하였습니다. 파이썬 all 함수 : all(iterable) 인자로 전달된 반복 가능한(iterable) 객체의 모든 요소가 참(True)인지 확인합니다. 만약 모든 요소가 참이면 True를 반환하고, 하나라도 거짓(False)이면 … Read more