C语言学习宝典(3)数组:一维数组的定义: 类型说明符 数组名[常量表达式]例如: int a[10];说明:(1)数组名的命名规则和变量名相同,遵循标示符命名规则(2)在定义数组时需要指定数组个数,即数组长度(3)变量表达式中可以包括常量和符号常量,不能包含变量。一维数组的应用: 数组名[下标]一...
分类:
其他好文 时间:
2014-08-05 00:14:38
阅读次数:
230
卡塔兰数卡塔兰数是组合数学中一个常出现在各种计数问题中出现的数列。由以比利时的数学家欧仁·查理·卡塔兰(1814–1894)命名。卡塔兰数的一般项公式为 另类递归式:令h(1)=1,h(0)=1, h(n)=((4*n-2)/(n+1))*h(n-1);前几项为 (OEIS中的数列A000108):...
分类:
其他好文 时间:
2014-08-05 00:14:28
阅读次数:
454
最近看了不少递归的例子,突然有了点想法其实递归,就是不断地调用自身。如果不好理解,就理解成是不断地调用同一个方法,只不过这个方法是自己。递归的具体过程涉及到栈内存等,这里就不写了,写写我的一些看法吧递归主要一个就是对结果的处理,一般来说,递归到最深一层时开始返回,然后返回的过程中呢,会带回一个结果比...
分类:
其他好文 时间:
2014-08-05 00:01:08
阅读次数:
356
思路:类似归并排序算法,在合并已经有序的相邻子数组的时候,计算前面数组相对于后面数组的逆序对数,整个递归过程可以算出所有逆序对#include void merge(int A[], int front, int middle, int end, int &count){ if (front ...
分类:
其他好文 时间:
2014-08-04 21:26:48
阅读次数:
262
第 15 题(树):题目:输入一颗二元查找树,将该树转换为它的镜像,即在转换后的二元查找树中,左子树的结点都大于右子树的结点。用递归和循环两种方法完成树的镜像转换。 例如输入:8/ \6 10/ \ / \5 7 9 11输出:8/ \10 6/ \ / \11 9 7 5定...
分类:
其他好文 时间:
2014-08-04 21:07:08
阅读次数:
264
题目:存在一个单链表,头指针为head,实现单链表的反转Node *Reverse(Node *head)。
该算法的求解办法有很多,如:
方法1:先顺序变量单链表,将结点保存到栈中,在从栈中弹出结点,重新建立一个新的单链表;
方法2:用《剑指offer》里面给出的算法,用三个指针来实现;
方法3:采用递归实现,是方法2的递归实现形式。
本文主要给出方法2和方法3,在给出具体的代码之前,先要注意几个问题:
...
分类:
其他好文 时间:
2014-08-04 18:01:57
阅读次数:
200
1. 编程入门2. 数据结构3. 字符串4. 排序5. 图遍历6. 图算法7. 搜索:剪枝,启发式搜索8. 动态规划/递推9. 分治/递归10. 贪心11. 模拟12. 算术与代数13. 组合问题14. 数论15. 网格,几何,计算几何【编程入门】PC 110101, uva 100, The 3n...
分类:
其他好文 时间:
2014-08-04 17:31:37
阅读次数:
461
(1)运用for循环:#includeusing namespace std;int JieCheng(int);int main(){ int n,sum=0; cout>n; for(int i=1;iusing namespace std;int JieCheng(int);int ma...
分类:
其他好文 时间:
2014-08-04 17:29:07
阅读次数:
143
问题:判断二叉树是否为镜像二叉树分析:递归判断,根节点单独判断,然后递归左结点和右结点,之后每次一起递归左结点的左结点和右结点的右结点比较,左结点的右结点和右结点的左结点比较/** * Definition for binary tree * struct TreeNode { * int ...
分类:
其他好文 时间:
2014-08-04 17:27:27
阅读次数:
175
(1)递归实现:#includeusing namespace std;int Fibonacci(int);int main(){ int n; cout>n; for(int i=1;iusing namespace std;int Fibonacci(int);int main(){ ...
分类:
其他好文 时间:
2014-08-04 17:25:57
阅读次数:
227