计划将基本数据结构与算法用 Javascript 实现一遍,以加强自己的理解,所有代码均为本人先思考再实现,部分有参考经典实现。 计划涵盖内容:
数据结构:单链表、双链表、环形链表;
算法:链表的插入、删除、查找、LRU 缓存实现。
数据结构:链式栈(基于链表)与顺序栈(基于数组);
算法:入栈与出栈。
数据结构:链式队列(基于链表)与顺序队列(基于数组),环形队列;
算法:进队列与出队列,队列扩容。
数据结构:二叉树、二叉搜索树(BST);
算法:二叉树及BST的构建,插入、删除、查找结点,遍历,求高度、深度、层数,求前驱结点和后继结点。
to be continued... ...