일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- JavaScript
- 정렬
- react
- Sequelize
- Queue
- MySQL
- class
- 자료구조
- TypeScript
- nestjs
- cookie
- Bull
- AWS
- Nest.js
- GIT
- MongoDB
- mongoose
- jest
- Python
- flask
- 공룡게임
- Express
- game
- nodejs
- OCR
- dfs
- 게임
- typeORM
- Dinosaur
- Today
- Total
목록Stack (3)
포시코딩
개요 자료구조를 공부할 때 파이썬이 다루기 쉽다해서 자료구조, 알고리즘은 파이썬으로만 해왔는데 얼마전, 토스 코딩테스트에서 node.js 부문에 대해 문제를 봤을 때 오로지 JavaScript로만 풀 수 있게 되있는걸 볼 수 있었다. 문제를 풀 수 있고 없고를 떠나, 앞으로 node.js 관련 개발을 베이스로 깔고 갈텐데 자료구조나 알고리즘을 JavaScript로 다루지 않는다는게 좀 웃긴거 같아서 당분간은 죽이되든 JavaScript로 연습해볼 생각이다. Queue class Node { constructor(data) { this.data = data; this.next = null; } } class Queue { constructor() { this.head = null; this.tail = n..
Queue FIFO queue = [] def enqueue(data): queue.append(data) def dequeue(): data = queue[0] del queue[0] return data for i in range(1, 10): enqueue(i) print(queue) print('dequeue: ', dequeue()) print('dequeue: ', dequeue()) print(queue) Stack LIFO stack = [] def push(data): stack.append(data) def pop(): data = stack[-1] del stack[-1] return data for i in range(1, 10): push(i) print(stack) print('..
스택이란? LIFO(Last In First Out)의 성격을 가진 자료구조. 데이터를 쌓고나서 데이터를 빼낼 때 마지막으로 넣은 데이터부터 빼내는 자료구조이다. 참고로 반복문의 무한루프 등으로 메모리의 이 스택 영역이 쌓이고 쌓이다가 터지는 현상을 많이 들어본 스택오버플로우(StackOverflow)라고 한다. 사용예시 웹에서의 뒤로가기 버튼 Undo / Redo React의 Stack Navigator 스택의 대표 기능 Peek 스택의 Top(맨 위) 데이터를 보는 것 Push 스택의 Top에 원소를 삽입하는 행위 Pop 스택의 Top에서 원소를 가져오는 행위. Push로 넣었던 원소가 나오게 된다. Peek, Push, Pop 코드 구현 이전 포스팅에서 배웠던 링크드리스트를 통해 스택을 구현해보자 ..