개발화이팅
python_ 자료구조 본문
자료구조 - 특징이 있는정보를 메모리에 효율적으로 저장 및 반환하는 방법,
대용량 일수록 메모리에 빨리저장 검색되어 효율적으로 사용하고 실행시간 단축 가능
- 스택 = 나중에들어온 값이 먼저나가는 구조 (LIFO)
- 큐 = 먼저 들어온 값이 먼저나가는 구조 (FIFO)
- 튜플 = 리스트와 같지만 데이터 변경 불가
- 세트 = 데이터 중복 불가, 수학의 집합 연산 지원하는 자료구조
- 딕셔너리 = key와 value 형태의 데이터를 저장하는 자료구조, key 값 중복x
스택
파이썬에서 리스트 이용해 스택 구현 해보기
word = input("Input a word: ")
word_list = list(word)
print(word_list)
result=[]
for _ in range(len(word_list)):
# _를 사용하면 반복문에서 생성된 값은 사용하지않고 조건만큼만 반복함
result.append(word_list.pop())
print(result)
print(word[::-1])
큐
선입선출 방식
번호표뽑는 방식으로 생각하면 됨
리스트를이용해 구현해보기
a = [1,2,3,4,5]
a.append(10)
a.append(20)
print(a)
print(a.pop(0))
print(a.pop(0))
pop(0)을 사용해 첫번째 값 꺼내기
append()함수를 이용해 뒤에 추가