技术改变命运
发布时间:2016-07-05 17:42:47
You are given a binary tree in which each node contains a value. Design an algorithm to print all paths which sum up to that value. Note that it can be any path in the tree-it does not have to start at the root.思路:一层一层的遍历,保存当前节点到根节点的完整路径,然后从当前节点向上扫描,如果找到.........【阅读全文】
发布时间:2016-07-04 21:12:44
树的一些基本操作(遍历,构造,高度,节点数,销毁)c语言代码如下:点击(此处)折叠或打开#include<stdio.h>#include<stdlib.h>#include<unistd.h>struct BinaryTree{ struct BinaryTree *pLeft,*.........【阅读全文】
发布时间:2016-07-04 09:25:42
输入一个整数数组与一个整数,在数组中查找和为该整数的所有整数对.方法:排序夹逼:数组有序,直接由俩个指针分别从头和尾向中间扫描的方法,时间复杂度是O(n),空间复杂度是O(1)。总的时间复杂度(o(nlgn+n) = o(nlgn))。这里用到c语言的qsort()。c代码如下:点击(此处)折叠或打开#in.........【阅读全文】
发布时间:2016-07-04 00:19:51
考虑一个数组,或者更一般的一个字数组A[l...r](0≤l≤r≤n-1),该数组由连续的3段组成。这3段按顺序排在中轴p的后面:一段为已知小于p的元素,一段为已知大于或等于p的元素,还有一段未同p比较过的元素。这些段可以为空,在算法开始时,前两段通常是空的。在i= l+1开始,算法从左到右扫面字数组A[l...r],并保持这个.........【阅读全文】
发布时间:2016-07-02 21:52:19
选择问题是求一个n个数列表的第k个最小元素的问题。中位数:百度百科定义如下: 对于有限的数集,可以通过把所有观察值高低排序后找出正中间的一个作为中位数。如果观察值有偶数个,通常取最中间的两个数值的平均数作为中位数。中轴p(列表中的第一个元素) Lomuto划分 .........【阅读全文】