태그: 파이썬

[알고리즘] Generate Parentheses

Leetcode의 Generate Parentheses 문제를 풀어보도록 하겠습니다. 문제n 쌍의 괄호가 주어졌을 때, 괄호로 이루어진 유효한 문자열의 조합을 만들어내는 함수를 작성하라.예를 들어, n = 3 이면, 함수의 리턴 값은 다음과 같다. 1234567[ "((()))", "(()())", "(())()", "()(())", "()()()

[알고리즘] Remove Nth Node From End of List

Leetcode의 Remove Nth Node From End of List 문제를 풀어보도록 하겠습니다. 문제링크드 리스트가 주어졌을 때, 끝에서 n번째 노드를 제거 후, 그 링크드 리스트의 헤드를 리턴하라. 예를 들어, 링크드 리스트가 1->2->3->4->5이고 n이 2라면, 1->2->3->5를 리턴해야 한다.왜

[파이썬] TypeError: < not supported

파이썬에서 힙(heap)이나 우선순위 큐(PriorityQueue)를 사용하다 보면 다음과 같은 에러를 만날 수 있습니다. 1TypeError: '<' not supported between instances of 'Node' and 'Node' 이번 포스트에서는 위 에러를 해결하는 방법에 대해서

[파이썬] PriorityQueue(우선순위 큐) 사용법

데이터를 정렬된 상태로 저장하기 위해서 사용하는 파이썬의 PriorityQueue(우선순위 큐)에 대해서 알아보겠습니다. 우선순위 큐 자료구조우선순위 큐는 데이터를 추가한 순서대로 제거하는 선입선출(FIFO) 특성을 가진 일반적인 큐의 자료구조와 달리,데이터 추가는 어떤 순서로 해도 상관이 없지만, 제거될 때는 가장 작은 값을 제거하는 독특한 특성을 지닌

[파이썬] heapq 모듈 사용법

데이터를 정렬된 상태로 저장하기 위해서 사용하는 파이썬의 heapq(힙큐) 내장 모듈에 대해서 알아보겠습니다. 힙 자료구조heapq 모듈은 이진 트리(binary tree) 기반의 최소 힙(min heap) 자료구조를 제공합니다.자바에 익숙하신 분이라면 PriorityQueue 클래스를 생각하시면 이해가 쉬우실 것 같습니다. min heap을 사용하면 원소

[파이썬] for 루프에서 인덱스 얻기

enumerate() 내장 함수에 리스트를 넘기면 next() 메서드가 index와 value로 이뤄진 튜플을 반환합니다. 123>>> seasons = ['Spring', 'Summer', 'Fall', 'Winter']>>> list(enumerate(seasons))[(0, 'Spring'), (1, 'Summer'),

[파이썬] sqlite3 모듈 사용법

파이썬에 기본적으로 내장되어 있는 데이터베이스인 sqlite3 모듈를 사용하는 방법에 대해서 알아보겠습니다. 데이터베이스 접속sqlite3 내장 모듈을 임포트 후에 connect 메서드를 통해 커넥션 객체를 생성합니다. 메모리 DB 접속 (일회성) 12import sqlite3con = sqlite3.connect(':memory:') 파일 DB 접속

[파이썬] random 모듈 사용법

파이썬의 random 모듈은 랜덤 숫자를 생성 뿐만 아니라 다양한 랜덤 관련 함수를 제공합니다. 모듈 임포트우선 random 모듈을 사용하려면 임포트해야 합니다. 1import random random() 함수0부터 1사이의 랜덤 실수를 리턴합니다. 12>>> random.random() # Random float x, 0.0

[파이썬] 2진수, 8진수, 16진수 다루기

이 번 포스트에서는 파이썬에서 진수를 다루는 여러가지 방법에 대해서 알아보겠습니다. 다른 진수의 형태로 숫자를 표현하기파이썬에서는 기본적으로 10진수 형태로 숫자를 표현하기 때문에 다른 진수의 형태로 숫자를 표현하려면 다음과 같이 숫자 앞에 접두어를 붙여줘야 합니다. 2진수: 0b 8진수: 0o 16진수: 0x 123456>>> 42 =