티스토리 뷰
- 파이썬으로 스택을 구현할 때 input은 append()로, remove는 pop()으로 구현한다. 스택은 상자를 아래에서 위로 차곡차곡 쌓고 위에서부터 옮기는 형식을 생각하면 된다.
- 파이썬으로 큐를 구현할 때 deque을 import해서 input은 append()로, remove는 popleft()를 이용한다. 스택처럼 list를 이용할 수 있으나, list를 이용하면 원소를 꺼내고 나머지를 전부 뒤로 옮기고 이런 비 효율적인 방법을 이용해야 하기 때문에 그냥 덱 이용해서 스택처럼 시작하되, 앞의 요소를 삭제할 수 있는 popleft()를 이용하고 역순으로 뒤집어버리는 방법을 이용한다.
큐는 터널과 같은 모습으로, 먼저 들어간 차가 먼저 터널을 빠져나온다.
- 파이썬 리스트를 복사해 사용하는 문제를 풀어야 할 때가 있다. 만일 아래와 같은 코드가 있다고 가정해보자.
oldList = [0, 1, 2, 3]
newList = oldList
print(newList) #[0, 1, 2, 3]
눈으로 봤을 때 newList에 oldList요소가 복제된 것으로 보이지만, 이후의 코드에서 oldList를 수정했을 때 이 경우 newList도 수정되는 골치아픔을 겪게 된다.
때문에, 이럴땐 이렇게 하자.
oldList = [0, 1, 2, 3]
newList = oldList.copy()
print(newList) #[0, 1, 2, 3]
이러면 결과는 같지만 oldList와 newList 둘이 각각 독립적인 사용이 가능해진다.
참고
반응형
'TIL Today I Learned' 카테고리의 다른 글
[TIL] 201106 (0) | 2020.11.06 |
---|---|
[TIL] 201104 (0) | 2020.11.04 |
[TIL] 201102 (0) | 2020.11.02 |
[TIL] 201101 (0) | 2020.11.01 |
[TIL] 201030 (0) | 2020.10.30 |
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 움직이는 글래스모피즘
- bs4 크롤링
- css 글래스모피즘
- 10989 파이썬
- nextjs 파라미터 넘기기
- 파이썬 flask
- 파이썬 정렬
- 글래스모피즘 애니메이션 구현
- vscode venv
- 글래스모피즘 구현
- next.js 리다이렉트
- 백준 10989 파이썬
- 리액트 스크롤
- nuxt 공식문서 한글
- react router
- Til
- 리액트 컴포넌트
- 리액트 라우터
- getserversideprops redirect
- 자바스크립트
- 파이썬 크롤링
- 리액트 파라미터 넘기기
- NextJS
- 화이팅
- dvd 효과
- 카페음료테스트
- css marquee
- nuxt 공식문서
- 리액트
- nextjs 스크롤
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함