手写数据结构
- 手写jdk中的优先级队列 PriorityQueue****
- 手写代码 实现阻塞队列,ArrayBlocking源码****
- 手撕一个阻塞队列,生产者生产0~100的随机数,消费者消费后将其存储到一个list,需要保持list中元素保持递增。(信号量+线程安全)
- 两个栈实现一个队列,队列长度不限,如何维持什么状态***
- 手写构建二叉树,排序二叉树和堆的区别、使用场景
- 实现一个Java栈结构 ==话说这种一般能用的数据结构是什么?
- 里面有一个max函数,可以以O(1)的复杂度找出栈中最小的元素
- 写一个生产者消费者模型
- 图了解吗。如何遍历图,如何找图的最小路径(A*,迪杰斯特拉),迪杰斯特拉是单元还是多元的?**
- 手写Trie树的插入算法
- 一棵平衡二叉树,怎么添加节点变成满二叉树/完全二叉树?
手写算法
基本上CYC的题都会考到,反正链表+树 手写经常考+剑指offer里面的题
- 希尔排序、快速排序、归并排序,快排和堆排的时空复杂度,**********************
- 手写快排,堆排。泛型快排*学到了装杯的东西
- 链表快排
- 快排时间复杂度,为什么不稳定?稳定的排序算法是什么
- jdk 中有哪些包使用了哪些排序算法
- leetcode155 最小栈
- 手写算法求最长子序列
- 求下一个大的数
- 剑指offer62:圆圈剩下的数字
- twoSum
- 镜像二叉树
- 矩阵顺时针转90度
- 判断回文字符串
- [1,2,3,2,3]找出其中只出现一次的数(让用位操作去实现)
- 合并链表
- leetcode1247
- 环形链表判断有环,环入口节点
- 岛屿数量(leetcode 200) DFS秒解
- 数组实现栈(入栈、出栈、扩容)
- aaaaaabbbbbbzzzz.....zzzccccccc这样的字符串有100kb,怎么压缩?记录每个字母出现的开始位置即可
- 对链表两个节点一反转:1->2->3->4变成2->1->4->3(编程题)
- 给定一个数组判断是不是二叉搜索树的后序遍历的结果(编程题)
- 求数组中子数组的和的最大值
- 求二维数组中子矩阵和的最大值
- 求二维数组中子矩阵的积的最大值
- Leetcode的430题. Flatten a Multilevel Doubly Linked List
- (编程题)数组中找出最小的k个数,空间复杂度O(1)
- (编程题)二维数组,每一行从左到右递增,从上到下递增,判断给定的数是否存在
- (编程题) 1ÿ