栈 & 队列
03.栈 ToyStack
代码链接:https://github.com/skychx/Toy-Data-Structures/blob/main/03-Stack/ToyStack.d.ts
ToyStack 有两个实现:
- 基于
ToyArray实现的ArrayStack,在数组尾模拟栈 - 基于
ToyLinkedList实现的LinkedListStack,在链表头模拟栈
API:
| 基础 | 增 | 删 | 查 | 改 |
|---|---|---|---|---|
| getSize() | push(e) | pop() | peek() | |
| isEmpty() |
04.队列 ToyQueue
代码链接:https://github.com/skychx/Toy-Data-Structures/blob/main/04-Queue/ToyQueue.d.ts
ToyQueue 有三个实现:
- 基于
ToyArray实现的ArrayQueue,实现最为简单,缺点是dequeue()时间复杂度为O(n) LoopQueue,底层依旧是数组,但是把dequeue()时间复杂度优化为O(1)LinkedListQueue,基于链表实现的队列
API:
| 基础 | 增 | 删 | 查 | 改 |
|---|---|---|---|---|
| getSize() | enqueue(e) | dequeue() | getFront() | |
| isEmpty() |
一个小尾巴
欢迎关注公众号:卤代烃实验室:专注于前端技术、混合开发、图形学领域,只写有深度的技术文章