GitHub

https://github.com/Choidongjun0830

스택 3

BFS, DFS 다시 공부

참고 더보기 https://youtu.be/BsYbdUnKZ-Y?si=NH3yYYRu0XnaSZnN https://youtu.be/7C9RgOcvkvo?si=D3bH2OfymjUXocs2 그래프 탐색 알고리즘 (그래프 : 여러 개체들이 연결되어 있는 자료구조) 대표적인 문제 유형 경로 탐색 유형(최단거리, 시간) 네트워크 유형(연결) 연결되어 있는 그룹의 개수 두 개체가 같은 네트워크 안에 있는지 조합 유형(모든 조합 만들기) 스택 먼저 들어온 데이터가 나중에 나가는 형식(선입후출)의 자료구조. 입구와 출구가 동일한 형태로 스택을 시각화할 수 있다. 파이썬에서 스택은 단순히 리스트와 append(), pop()으로 구현 가능하다. stack = [] stack.append(5) stack.pop() ....

알고리즘 2024.02.19

[프로그래머스] 올바른 괄호

올바른 괄호 괄호가 바르게 짝지어졌다는 것은 '(' 문자로 열렸으면 반드시 짝지어서 ')' 문자로 닫혀야 한다는 뜻입니다. 예를 들어 "()()" 또는 "(())()" 는 올바른 괄호입니다. ")()(" 또는 "(()(" 는 올바르지 않은 괄호입니다. '(' 또는 ')' 로만 이루어진 문자열 s가 주어졌을 때, 문자열 s가 올바른 괄호이면 true를 return 하고, 올바르지 않은 괄호이면 false를 return 하는 solution 함수를 완성해 주세요. def solution(s): answer = True length = len(s) if length % 2 != 0: return False stack = [] for char in s: if char == "(": stack.append(cha..

DFS, BFS

다음에 풀어볼 백준 문제는 DFS, BFS 와 관련된 것인데 처음 들어보는 것이라 공부를 해보았다. ( 참고 : https://youtu.be/7C9RgOcvkvo ) 1. 스택과 큐 스택 : 선입 후출, 입구와 출구가 동일한 형태로 스택을 시각화한다. 파이썬에서는 append()와 pop() 메소드를 이용하면 스택 구현이 가능하다. print(stack[::-1]) 최상단부터 출력, print(stack) 최하단부터 출력할 수 있다. c++에서는 push()와 pop()으로 구현할 수 있다. 큐 : 선입 선출, 입구와 출구가 모두 뚫려있는 터널 형태로 스택을 시각화한다. from collections import deque => 큐 구현을 위해 deque 라이브러리를 사용한다. 코드를 작성할 때, ‘q..

728x90