반응형

Stack 4

[TIL] HEAD 가 아닌 과거 Commit 수정하기 (git rebase + amend)

Commit 을 여러 개 쌓았는데 중간에 있는 Commit 에 빠뜨린 게 있었다6c381c2 Feat: 기능 추가8b8dba7 Refactor: 리팩토링a775b72 Feat: 다른 기능9b31d5a Chore: echo 메시지 정리 👈 여기에 추가하고 싶음c01b112 Feat: 이전 기능git commit --amend 는 HEAD 만 수정 가능하다이럴 때 rebase -i 를 쓴다💡 해결: interactive rebase + amend과거 Commit 을 수정하려면 rebase -i 로 해당 Commit 에 멈춰야 한다📋 전체 흐름1. 작업 중인 변경사항 stash2. rebase -i 로 해당 Commit 에서 멈춤 (edit 모드)3. stash pop 으로 변경사항 복구4. amend..

TIL/TIL 2026.02.09

[백준] 4949 균형잡힌 세상 Python

1. 문제 영문 알파벳, 공백, 소괄호와 대괄호로 이루어져 있는 문자열에서 소괄호와 대괄호가 짝을 이루는지 판단하는 프로그램  2. 제한시간 제한 1초 메모리 제한 128MB  3. 알고리즘 분류 * 자료 구조* 문자열 * 스택  4. 접근 방식 9012 괄호 https://www.acmicpc.net/problem/9012 문제는간단하게 stack 를 이용해서 ( 이면 stack 에 넣고, ) 이면 pop 해서 짝을 맞췄는데 괄호의 종류가 두 개가 되니 ) 이면 ( 이랑 맞추고 ] 이면 [ 와 맞추는 작업을 추가했다  5. 전체 코드 w/ Python # https://www.acmicpc.net/problem/4949# 영문 알파벳, 공백, 소괄호와 대괄호로 이루어져 있는 문자열에서# 소괄호와 대괄..

알고리즘 2025.02.17

[TIL] DFS 깊이 우선 탐색 BFS 너비 우선 탐색

그래프를 탐색하는 방법에는DFS 깊이 우선 탐색과 BFS 너비 우선 탐색이 있다 그래프에 대한 설명은 그래프 종류와 표현 방식에 정리해 놨다 1. DFSDepth-First Search, 깊이 우선 탐색 최대한 깊이 내려가고, 더 이상 깊이 내려갈 곳이 없을 경우 옆으로 이동모든 노드를 방문하는 경우에 사용한다 * 스택 또는 재귀를 이용해서 구현 시간 복잡도 - 인접 리스트 O(V+E), 인접 행렬 O(V^2)   DFS 기본 원칙"앞으로 찾아 가야할 노드" 와 "이미 방문한 노드" 를 기준으로 데이터 탐색한다경로 찾기, 탐색 문제, 백트래킹, 사이클 탐지 등에 유용하다 DFS 코드 구현탐색 순서1 - 2 - 4 - 5 - 3 - 6 4 방문 후 2로 백트래킹하여 5를 방문하고, 다시 2 - 1로 백트래..

TIL/Python 2024.09.21

[TIL] 덱 deque Double-Ended Queue

18258 큐2 시간 초과 떠서 해결 방안을 찾아보다가 deque 를 공부해 보기로 했다 덱 dequeDouble-Ended Queue, 양쪽에서 요소를 추가하거나 제거할 수 있는 자료 구조 Python 에서는 collections 모듈에서 제공되며, 스택과 큐의 기능을 모두 가지고 있다from collections import dequequeue = deque('Hello')print(queue)# 실행 결과# deque(['H', 'e', 'l', 'l', 'o']) list.pop() 과 deque.popleft() 의 차이  pop() - list 에서 제일 마지막을 제외한 특정 인덱스의 원소를 삭제하기 위해서는그 원소 뒤의 모든 원소들을 한 칸씩 앞으로 옮겨야 하기 때문에 시간 복잡도 O(n) ..

TIL/Python 2024.09.19
반응형