2021前端算法面试

github地址:https://github.com/GuoLizhi/algorithm,欢迎star~一起学习

项目简介

本项目主要分为两个部分

  • 基础数据结构:会使用Java和TypeScript实现底层的数据结构,并考虑数据结构中每个操作的时间复杂度
  • leetcode算法:算法主要会记录在本仓库的issue中,leetcode的每一个分类我都以标签的形式标记出来,欢迎参考

学习算法是一个漫长的过程,没法靠突击,只能一步一步慢慢积累。

数据结构

数据结构 Java版 TypeScript版
数组 Array Array
使用数组实现的队列 ArrayQueue ArrayQueue
使用数组实现的栈 ArrayStack ArrayStack
链表 LinkedList LinkedList
使用链表实现的队列 LinkedListQueue LinkedListQueue
使用链表实现的栈 LinkedListStack LinkedListStack
循环队列 LoopQueue LoopQueue
最大堆 MaxHeap MaxHeap
优先队列 PriorityQueue PriorityQueue
双向链表 DoubleLinkedList DoubleLinkedList
二分搜索树 BST BST
基于二分搜索树的集合 BSTSet BSTSet
基于链表的集合 LinkedListSet LinkedListSet
基于链表的映射 LinkedListMap LinkedListMap
基于二分搜索树的映射 BSTMap BSTMap
线段树 SegmentTree SegmentTree
字典树 Trie Trie
并查集(基于数组索引) UnionFind UnionFind
并查集(基于树) UnionFind2 UnionFind2
并查集(使用节点size优化) UnionFind3 UnionFind3
并查集(使用rank优化) UnionFind4 UnionFind4
平衡二叉树 AVLTree AVLTree

leetcode按题目类型分类

leetcode按难易分类

写在最后

我的数据结构是从刘宇波老师玩转数据结构开始学起的,算是我数据结构的启蒙老师,课程都是满满的干货,如果有需要,可以购买此课程看看

原文地址:https://www.cnblogs.com/guolizhi/p/14435940.html