排序:
默认
按更新时间
按访问量

并查集之HDOJ1232

畅通工程 Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 23971    Accepted Submission(s): 12449 ...

2013-09-27 08:47:09

阅读数:629

评论数:0

并查集之POJ1308

Description A tree is a well-known data structure that is either empty (null, void, nothing) or is a set of one or more nodes connected by directed ...

2013-09-27 08:11:07

阅读数:1207

评论数:0

动态规划介绍

动态规划 终于来到了算法设计思想中最难,也最有趣的这部分,在去年的google笔试中,7道算法设计题有2道动态规划(Dynamic Programming)。 看了这么久的算法,这部分也是唯一感觉到了比较难的地方, 从这篇文章开始,将花连续的篇幅来讨论一些动态...

2013-09-17 14:38:38

阅读数:1128

评论数:1

面试题之数组统计

题目:给定数组A,大小为n,数组元素为0到n-1的数字,不过有的数字出现了多次,有的数字没有出现。请给出算法和程序,统计哪些数字没有出现,哪些数字出现了多少次。要求在O(n)的时间复杂度,O(1)的空间复杂度下完成。   解法一: 直接用两层遍历,O(n^2)的时间复杂度,O(1)的空间复杂度 #...

2013-08-29 15:48:00

阅读数:1734

评论数:1

图的邻接表表示法的实现

#include #include #define MaxVertexNum 50 typedef struct node *EdgeNode; typedef struct vnode *VertexNode; typedef struct graph *ALGraph; struct...

2013-08-27 16:03:44

阅读数:7536

评论数:0

各种排序算法

#include #include #define LeftChild(i) (2 * (i) + 1) /* 插入排序 */ void InsertionSort(int *A, int n) { int j, p, tmp; for (p = 1; p < n; ...

2013-08-22 19:18:47

阅读数:553

评论数:0

AVL--平衡二叉查找树

平衡二叉树失衡的四种情况: AVL树节点声明: struct AvlNode; typedef struct AvlNode *Position; typedef struct AvlNode *AvlTree; struct AvlNode { ElementType Element...

2013-08-19 21:49:54

阅读数:774

评论数:0

树和二叉查找树的实现

树的声明。和二叉查找树的实现

2013-08-19 17:06:08

阅读数:772

评论数:0

KMP算法--转

作者: 阮一峰 日期: 2013年5月 1日 字符串匹配是计算机的基本任务之一。 举例来说,有一个字符串"BBC ABCDAB ABCDABCDABDE",我想知道,里面是否包含另一个字符串"ABCDABD"? 许多算法可以完成这个任务,...

2013-08-11 23:13:15

阅读数:6259

评论数:18

计算机科学中最重要的32个算法

转自:http://www.infoq.com/cn/news/2012/08/32-most-important-algorithms A* 搜索算法——图形搜索算法,从给定起点到给定终点计算出路径。其中使用了一种启发式的估算,为每个节点估算通过该节点的最佳路径,并以之为各个地点排定次序。...

2013-06-21 22:11:39

阅读数:1699

评论数:0

POJ3633

[题目大意]: 在一个3*n(0 [输入]: 每一行一个测试数据n,输入-1结束. [输出]: 对每一个测试数据,输出放置方法的种数. Sample Input 2 8 12 -1 Sample Output 3 153 2131 [解题分析]:(来自网上) 1...

2013-06-19 10:17:48

阅读数:777

评论数:0

表达式树

用到了栈,并且递归实现了中序遍历,后序遍历,前序遍历。 同时应该学会union的使用方法。 基础知识: 一、表达式树          表达式树的树叶是操作数(operand),加常数或变量名字,而其他的结点为操作数(operator)。由于这里所有的操作都是二元的,...

2013-06-18 21:30:45

阅读数:14634

评论数:2

利用数组栈将中缀表达式转换成后缀表达式

#include #include #include typedef struct Mystack *Stack; struct Mystack { int Capacity; /* 栈的容量 */ int Top_of_stack; /* 栈顶下标 */...

2013-06-18 11:15:09

阅读数:1502

评论数:0

用栈计算逆波兰式

#include #include #include typedef struct Mystack *Stack; struct Mystack { int Capacity; /* 栈的容量 */ int Top_of_stack; /* 栈顶下标 */...

2013-06-18 00:50:47

阅读数:2459

评论数:1

栈的应用---平衡符号

判断一行字符串输入"各种括号"是否是合法的-----------------------栈用数组实现 如:[()]是合法的(balance) [(])是不合法的(imbalance) #include #include #include typedef str...

2013-06-17 23:23:59

阅读数:2673

评论数:2

计算最大公因数的欧几里德算法

#include #include int gcd(int m, int n) { int rem; while(n > 0) { rem = m % n; m = n; n = rem; } ...

2013-06-12 19:03:23

阅读数:1485

评论数:0

非波那切数列

原始做法---会超时 #include #include long int fib(n) { if(n <= 1) return 1; else return fib(n-1) + fib(n-2); } int main() { ...

2013-06-12 10:59:18

阅读数:2041

评论数:0

求最长子序列和

法一:O(n^3) #include #include int sub_Sum(int a[], int left, int right) { int i, temp_sum = 0; for(i = left; i <= right; i++) { ...

2013-06-09 00:58:31

阅读数:4477

评论数:3

POJ1258--贪心&最小生成树的prim算法

用prim算法实现,T1集合为所有点集合,T2集合表示已经是最小生成树中的点 lowcost[maxn]用来实现集合T1内各顶点到集合T2中各顶点的权值最小边的权值 nearvex[maxn]用来实现集合T1内顶点距集合T2中哪个顶点的距离最小 prim算法的思想: 初始:lowcost[...

2013-03-28 20:53:28

阅读数:1262

评论数:0

POJ1007

#include using namespace std; int cmp(const void *a, const void *b) { return(*(int *)a - *(int *)b); } int main() { int i, j, k, n, m, c...

2013-03-22 11:14:47

阅读数:666

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭