BasicExercises 算法 排序 冒泡排序 插入排序 选择排序 希尔排序 快速排序 归并排序 堆排序 二分法 二分搜索 栈 getMin 栈(重复压栈) getMin 栈(不重复压栈) 两个栈实现队列 只用递归和栈操作逆序一个栈 一个栈排序另一个栈 线程 两个线程 101010 生产者和消费者 三个线程有序打印 死锁 五个线程同时打印 Hello 再同时打印 World 树 前序遍历(递归)(深度) 前序遍历(非递归)(深度) 中序遍历(递归)(深度) 中序遍历(非递归)(深度) 后续遍历(递归)(深度) 后续遍历(非递归)(深度) 广度优先遍历(非递归)(层次遍历) 树的深度计算(非递归) 判断平衡二叉树(递归) 反转二叉树(递归) 最大搜索二叉子树(递归) 校验 BST 的后序遍历(递归) BST 的后序遍历重构 BST(递归) 判断 完全二叉树(非递归) 有序数组生成 平衡搜索二叉树(递归) 最小公共父节点(LCA)(递归) 最小公共父节点(LCA)(非递归 && 哈希表) 节点之间的最大距离(递归) 链表 反转链表(非递归) 打印两个有序链表的公共部分 反转部分链表(非递归) 环形链表的约瑟夫问题 链表是否是回文结构 链表找环 链表相加 删除链表中倒数第 K 个节点 删除无序表中的重复元素 链表删除特定值 一种怪异的方式删除节点 有序的环形链表插入值 合并两个有序链表 动态规划 爬楼梯 图 广度优先搜索(DFS)(非递归) 深度优先搜索(BFS)(递归) 深度优先搜索(BFS)(非递归) 最短路径(迪杰斯特拉算法)(非递归) 位运算 不用额外变量交换整数值 数组 全排列(不去重递归) 全排列(去重递归) 全子集(不去重) 其它 求平方根 设计模式 工厂模式 简单工厂模式 工厂模式 抽象工厂模式 单例模式 饿汉式单例 懒汉式单例 IoDH 单例 原型模式 浅克隆原型模式 深克隆原型模式 建造者模式 适配器模式 桥接模式 组合模式 装饰模式 外观模式 代理模式 责任链模式 命令模式 普通命令模式 命令队列 撤销命令 观察者模式 迭代器模式