算法-斐波那契数列的三种算法以及复杂度详解

斐波那契数列:  f(n)=f(n-1)+f(n-2)(n>2) f(0)=1;f(1)=1;  即有名的兔子繁衍问题  在本篇文章我将会给出三种解法  递归(1)递归:函数自己调用自己&nbs...

递归面试题整理以及时间复杂度分析详解

   递归具有很多的优点,它可以将一个大的问题划分为小的子问题,然后再逐步细分,达到解决问题的目的。递归的实现借用了栈桢的建立和销毁,所以它是很方便的。但是递归也有一些缺点,比如说,如果递归调用太深,栈桢消耗过大,就会出...

算法-时间复杂度为O(n)的排序详解

问题:请实现一个排序算法,要求排序一个公司几万名员工的年龄,要求时间复杂度为O(n)。思路:要排序的序列元素数量比较大,不适合用传统的排序方法,但问题的要求是排序员工的年龄,也就是说,每个元素都在一个很小的范围之内(1-100)。又要求时间...

算法-包含min函数的栈详解

/* [包含min函数的栈]     [题目] 定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数。     [解析]...

算法-二叉树中和为某一值的路径详解

/* [二叉树中和为某一值的路径]          [题目] 输入一颗二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。 路径定...

算法-从上往下打印二叉树详解

/* [从上往下打印出二叉树的每个节点,同层节点从左至右打印。]          [题目] 从上往下打印出二叉树的每个节点,同层节点从左至右打印。...

算法-二叉搜索树的后序遍历序列详解

/* [二叉搜索树的后序遍历序列]          [题目] 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。 如果是则输出Y...

算法-栈的压入、弹出序列详解

/* [栈的压入、弹出序列]          [题目] 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。...

算法-数值的整数次方详解

/* [数值的整数次方]              [题目] 给定一个double类型的浮点数base和in...

算法-调整数组顺序使奇数位于偶数前面详解

/* [调整数组的顺序使奇数位于偶数的前面]              [题目] 输入一个整数数组,实现一个...