栈 & 队列
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() | 
一个小尾巴
欢迎关注公众号:卤代烃实验室:专注于前端技术、混合开发、图形学领域,只写有深度的技术文章