旋转数组 描述 将有序数组的前n个数移到数组最后称为旋转数组。求数组中最小的元素。 思路 顺序查找时间复杂度为O(n),序列分为两段,两段都是有序的,且大多数情况下第一段的数大于第二段,这就可以用二分查找,如[3,4,5,1,2] ,当index1+1=index2时,nums[index2]为所要 ...
分类:
编程语言 时间:
2020-02-19 13:04:29
阅读次数:
91
题目: 编写非递归函数计算斐波那契数 Fn 。对于每一个斐波那契数,你的代码应该只计算一次。测试你的代码。 思路: 非递归算法,要从正向进行迭代计算。我们统一一下定义:数列从 1 开始,即F(1) = 1, F(2) = 1。 利用三个变量:fib_front,fib_behind, fib。顾名思 ...
分类:
其他好文 时间:
2020-02-18 20:14:31
阅读次数:
55
归并排序 1. 算法推导 对一个等待排序的数组A,以及排序函数sort,以及合并两个有序数组的函数merge。则 sort(A) = merge(sort(A1), sort(A2)),上面这个推导公式看起来是满足递归算法的重复条件。举个例子: 2. 代码实现 2.1 递归实现 2.2 非递归实现 ...
分类:
编程语言 时间:
2020-02-18 14:57:50
阅读次数:
74
题目内容 Reverse a singly linked list. Example: 分析过程 题目归类: 题目分析: 边界分析: 空值分析 循环边界分析 方法分析: 数据结构分析 状态机 状态转移方程 最优解 测试用例构建 代码实现 非递归 递归 效率提高 拓展问题 Reverse Linked ...
分类:
其他好文 时间:
2020-02-14 16:21:24
阅读次数:
53
求$n!$中有多少个质因子p 方法一(非递归) 结论:$n!$中有$(\frac{n}{p}+\frac{n}{p^2}+\frac{n}{p^3}+…)$个质因子p 时间复杂度:$O(logn)$ 方法二(递归) 结论:$n!$中质因子p的个数,实际上等于1~n的倍数的个数$\frac{n}{p} ...
分类:
其他好文 时间:
2020-02-14 10:49:29
阅读次数:
81
引用: 园子里的看猿人的文章 如果有对学习.net感到迷茫的,可以借鉴如下知识点,进行逐步学习。 .Net 第一部分:.Net基础 .Net基础:数据类型、变量、运算符、分支结构、循环结构、方法、反编译器、递归、递归算法的非递归优化; 面向对象:异常、封装继承多态、单例模式、装饰者设计模式、this ...
分类:
Web程序 时间:
2020-02-13 14:59:26
阅读次数:
95
本题要求用非递归的方法实现对给定二叉树的 3 种遍历。 函数接口定义: void InorderTraversal( BinTree BT ); void PreorderTraversal( BinTree BT ); void PostorderTraversal( BinTree BT ); ...
分类:
其他好文 时间:
2020-02-13 14:40:31
阅读次数:
95
Q:输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。 T:利用一个栈实现二叉树的中序遍历,题中说这是一颗二叉树,那么二叉树的中序遍历是一个有顺序的, 那么这个时候只需要在中序遍历的时候当找到一个遍历节点的时候先将这个节点保存起来,然后 ...
分类:
其他好文 时间:
2020-02-11 11:54:02
阅读次数:
63
1、 //秉持着必然进入一个环的思想 #include<bits/stdc++.h> using namespace std; const int N=100009; int color[N];//记录此节点的颜色(也就是是哪个节点发出的路径经过了这个节点) int circle[N];//记录环大 ...
分类:
其他好文 时间:
2020-02-09 22:01:50
阅读次数:
71