프로그래밍/자료구조 (2) 썸네일형 리스트형 [PYTHON] 배열을 통해 구현한 선형 큐 / 원형 큐 큐란? - 큐는 선입선출의 특성을 가지는 자료구조이다. - front와 rear(또는 back)을 가지고 있으며 각각 맨앞, 맨뒤를 나타낸다. - 값 추가 push(enqueue), 값 삭제 pop(dequeue), 값 확인 peek이 존재한다. 그래서 큐는 무엇이고? 큐 잡다, 큐 돌려라 이런 말 들어보거나 해본적 있을 것이다. 큐는 직역하면 기다리는 줄, 대기열이다. 대기열은 먼저 들어온 사람이 먼저 빠져나간다. 누가 내 앞을 새치기 하려하면 놔둘리 없다. 당연히 큐 중간에 무언가 끼어들지 못하고, 맨 뒤에서 줄을 이어서거나 맨 앞의 사람이 빠지기를 기다려야 한다. 큐는 이처럼 선입 선출의 특성을 가지고 있다. 구현 파이썬의 클래스를 통해 구현해 줄 것이다. 스택이라는 클래스는 __init__과 pu.. [PYTHON] 배열을 통해 구현한 스택 스택이란? - 스택은 후입선출의 특성을 가지는 자료구조이다. - top은 맨 위의 값을 나타낸다. - 값을 집어 넣는 PUSH, 값을 빼내는 POP, 값을 조회하는 PEEK이 존재한다. 그래서 스택이 무엇인가? 게임 같은 것을 즐긴다면 '~~ 스택 쌓는다' 라는 말 정도는 한번 쯤 들어보았을 것이다. 영단어 그대로 해석하자면 '쌓다' 라는 뜻이다. 자료구조에서 스택은 동전을 쌓는 것과 비슷하다고 생각하면 된다. 100원짜리 위에 100원짜리를 올리고, 또 올리고 올리다 보면 일자로 길게 쌓인 동전탑을 만들 수 있다. 그렇다면 여기서 중간에 있는 동전을 뺄 수 있을까? 불가능 할 것이다. 위에서부터 맨 마지막에 쌓은 동전부터 맨 처음 쌓은 동전 순서대로 빼낼 수 있을 것이다. 스택은 이렇게 후입 선출로 작.. 이전 1 다음