Knowledge Map
DataStructure in Python[큐&스택] 본문
출처 : http://onestep.tistory.com/39
STACK
스택 : 데이터 입/출력이 한쪽으로만 하는 자료구조이다. LIFO구조이다.
PUSH : 가장 최근 데이터 위에 데이터 입력
POP : 가장 최근 데이터 부터 빼냄
파이썬에는 내장 자료형인 리스트 형이 스택을 표현하는데 사용된다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | #-*- coding: UTF-8 -*- # python 2.7 # Stack 스택 : LIFO 구조이다. # PUSH : 최상단 데이터 위에 자료를 입력 # POP : 최상단 데이터를 빼오는 것 def Main(): stack = [1,2,3,4,5] print "push 하기전==>",stack stack.append("a") stack.append("b") stack.append("c") print "\npush로 입력한 상태==>",stack print "\npop을 이용==>", while stack: print stack.pop(), print "\n\npop으로 데이터를 전부 빼온 후==>",stack print "==="*10,"stack","==="*10 Main() | cs |
출력 값
============================== stack ============================== push 하기전==> [1, 2, 3, 4, 5] push로 입력한 상태==> [1, 2, 3, 4, 5, 'a', 'b', 'c'] pop을 이용==> c b a 5 4 3 2 1 pop으로 데이터를 전부 빼온 후==> [] | cs |
QUEUE
스택 : 데이터 입/출력이 양쪽에서 하는 자료구조이다. FIFO구조이다.
PUT : 자료를 입력한다.
GET : 자료를 출력한다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | # Queue 큐 : FIFO구조이다. # PUT : 데이터를 입력하는 동작 # GET : 데이터를 빼내는 동작 def Main2(): queue = [1,2,3,4,5] print "처음 queue 상태==>",queue queue.append('a') queue.append('b') queue.append('c') queue.append('d') queue.append('e') print "\nPUT으로 입력한 상태 ==>",queue print "\nGET으로 출력==>", while queue: print queue.pop(0), print "\n\nGET으로 출력 뒤의 데이터==>", print queue print "\n","==="*10,"queue","==="*10 Main2() | cs |
1 2 3 4 5 6 7 8 | ============================== queue ============================== 처음 queue 상태==> [1, 2, 3, 4, 5] PUT으로 입력한 상태 ==> [1, 2, 3, 4, 5, 'a', 'b', 'c', 'd', 'e'] GET으로 출력==> 1 2 3 4 5 a b c d e GET으로 출력 뒤의 데이터==> [] | cs |
'PYTHON' 카테고리의 다른 글
DataStructure in Python[Bubble Sort] (0) | 2016.05.08 |
---|---|
DataStructure in Python[Selection Sort] (0) | 2016.05.07 |
DataStructure in Python[연결리스트] (0) | 2016.05.02 |
lxml, python-docx 설치 관련 (0) | 2016.04.30 |
파이썬 자료 구조 (0) | 2016.04.30 |
Comments