Stack
-
💡파이썬 스택(Stack) 이론 및 예제| 자료구조 & 알고리즘/자료구조 2023. 11. 9. 00:36
스택(Stack)이란? 스택은 흔히 두 가지 의미로 사용됩니다. 자료구조로써의 스택, 프로세스 메모리 구조로써의 스택 메모리입니다. 본 포스트에서는 자료구조로써의 스택에 대한 내용을 다루고 있으니, 스택 메모리에 대해 궁금하신 분은 저의 이전 포스팅을 참고해주세요. (무려 2년 3개월 전 포스팅... 시간 참 빨라요) 알고리즘 코딩테스트에서 가장 자주 활용되는 자료구조 중 하나 (DFS문제에서 자주 활용) 가장 나중에 들어온 데이터를 가장 먼저 처리하는 후입선출(LIFO, Last In First Out) 방식 입출력이 한쪽에서만 일어남 스택의 크기가 제한되어 있음 - 데이터의 크기만큼 크기가 결정됨. 따라서 C에서는 push, pop 할때마다 메모리 재할당(realloc)이 필요하지만 파이썬에서는 신경..
-
💡 [자료구조] Stack and Queue| 자료구조 & 알고리즘/자료구조 2021. 10. 26. 09:28
Stack 후입선출(LIFO) 자료구조 함수가 호출되면 스택 영역 메모리에 함수가 올라가요 삽입과 삭제가 한 방향에서만 일어나요 DFS에서 많이 쓰여요 (재귀적 호출) Queue 선입선출(FIFO) 자료구조 작업을 순서대로 실행시키기 위해 대기열을 구현할때 많이 사용돼요 삽입과 삭제가 양 방향 각각에서 일어나요 BFS에서 많이 쓰여요 (재귀적 호출) 다양한 형태의 Queue가 존재하는데, 특히 Deque의 경우는 삽입과 삭제가 양 방향에서 모두 일어날 수 있어요