前言:排序算法,选最优算法等所有算法目录
算法基础
评估算法的优劣指标-时间复杂度-空间复杂度-常数操作_我思故我在-CSDN博客
对数器:用于检验算法正确还是错误,主要分三分部分 1 生成算法所需数据 2 暴力或非最优的正确算法 3 算法结果比较器 最后循环多次验证,如果不对就报出来。
位运算总结_我思故我在-CSDN博客位运算总结_我思故我在-CSDN博客
排序算法
比较排序(基于比较的排序)https://blog.csdn.net/u010191034/article/details/39894083
选择排序
冒泡排序
插入排序
归并排序
随机快排
堆排序
希尔排序
非比较排序(不基于比较的排序)
计数排序
基数排序
排序总结
数据结构
链表
判断两条单链表是否相交返回相交节点_我思故我在-CSDN博客
栈
实现
队列
实现
图
树
前缀树
二叉树
二叉树 递归遍历 栈 遍历(深度优先)_我思故我在-CSDN博客
二叉树题
1 多叉树转换成二叉树 二叉树再转换成多叉树
2 二叉树序列化与反序列化
3 请把一段纸条竖着放在桌子上,然后从纸条的下边向上方对折1次,压出折痕后展开。此时折痕是凹下去的,即折痕突起的方向指向纸条的背面。 如果从纸条的下边向上方连续对折2次,压出折痕后展开,此时有三条折痕,从上到下依次是下折痕、下折痕和上折痕。
给定一个输入参数N,代表纸条都从下边向上方连续对折N次。 请从上到下打印所有折痕的方向。
例如:N=1时,打印: down N=2时,打印: down down up
5 给定一棵二叉树的头节点head,返回这颗二叉树是不是平衡二叉树_我思故我在-CSDN博客
6给定一棵二叉树的头节点head,返回这颗二叉树是不是满二叉树_我思故我在-CSDN博客
7
给定一棵二叉树的头节点head, 返回这颗二叉树中最大的二叉搜索子树的大小_我思故我在-CSDN博客
8
给定一棵二叉树的头节点head,任何两个节点之间都存在距离,返回整棵二叉树的最大距离_我思故我在-CSDN博客
堆
其他面试题
归并排序面试题
中心思想:在merge中做文章
题目:给定一个有序数组arr,代表坐落在X轴上的点,给定一个正数K,代表绳子的长度,返回绳子最多压中几个点?即使绳子边缘处盖住点也算盖住。
给定一个有序数组arr,代表坐落在X轴上的点_我思故我在-CSDN博客
题目:在一个数组中,一个数左边比它小的数的总和,叫数的小和,所有数的小和累加起来,叫数组小和。求数组小和。 例子: [1,3,4,2,5] 1左边比1小的数:没有 3左边比3小的数:1 4左边比4小的数:1、3 2左边比2小的数:1 5左边比5小的数:1、3、4、 2 所以数组的小和为1+1+3+1+1+3+4+2=16
归并排序-面试题01_我思故我在-CSDN博客
题目:在一个数组中,任何一个前面的数a,和任何一个后面的数b,如果(a,b)是降序的,就称为逆序对,返回数组中所有的逆序对
题目:在一个数组中, 对于每个数num,求有多少个后面的数 * 2 依然<num,求总个数 比如:[3,1,7,0,2] 3的后面有:1,0 1的后面有:0 7的后面有:0,2 0的后面没有 2的后面没有 所以总共有5个
其他算法