1.使用随机算法产生一个数,要求把1-1000W之间这些数全部生成。(考察高效率,解决产生冲突的问题)
1 | 以100为例,1000W时将value值更改即可,选取1-100范围方便时输出检验是否正确。 |
2.两个有序数组的合并排序
1 | 思路:新建一个以两个集合长度之和为长度的新数组,从两数组最左边开始比起,把小的放入新集合,并用变量标记后一位置, |
3.一个数组的倒序
1 | import java.util.*; |
4.计算一个正整数的正平方根
5.说白了就是常见的那些查找、排序算法以及各自的时间复杂度
6.二叉树的遍历算法
1 | //二叉树节点 |
前序递归遍历算法:访问根结点–>递归遍历根结点的左子树–>递归遍历根结点的右子树
中序递归遍历算法:递归遍历根结点的左子树–>访问根结点–>递归遍历根结点的右子树
后序递归遍历算法:递归遍历根结点的左子树–>递归遍历根结点的右子树–>访问根结点
1 | import com.ccut.aaron.stack.LinkedStack; |
7.DFS,BFS算法
参考:https://blog.csdn.net/qq_40660894/article/details/88385180
1 | import java.util.LinkedList; |
8.比较重要的数据结构,如链表,队列,栈的基本理解及大致实现
9.排序算法与时空复杂度(快排为什么不稳定,为什么你的项目还在用)
1 |
|
10.逆波兰计算器
1 |
11.Hoffman 编码
参考:https://blog.csdn.net/sinat_22828505/article/details/50364158
1 | /*------------------------------------------------------------------------- |
12.查找树与红黑树
1 | 二叉查找树:是由2节点的树组成的,最坏的时间复杂度是O(N) |