程序代码
文章平均质量分 74
西毒
路漫漫其修远兮
吾将上下而求索
展开
-
前序建立二叉树
前序建立二叉树 (字符0表示该处为空) #include "stdafx.h"#include "string.h"#include "stdio.h"struct node{ char value; node *left; node *right; node() { left=right=NULL;原创 2012-03-14 09:46:33 · 759 阅读 · 0 评论 -
Miller Rabin 概率算法测试素数(强伪素数)
一.费马小定里 if n is prime and (a,n) equals one ,then a^(n-1) = 1 (mod n)费马小定理只是个必要条件,符合费马小定理而非素数的数叫做Carmichael.前3个Carmichael数是561,1105,1729。Carmichael数是非常少的。在1~100000000范围内的整数中,只有255个C原创 2012-10-23 19:25:01 · 5691 阅读 · 0 评论 -
MPI 和OPENMP 混合编程 实现矩阵LU分解
LU分解 将系数矩阵A转变成等价两个矩阵L和U的乘积 ,其中L和U分别是下三角和上三角矩阵。当A的所有顺序主子式都不为0时,矩阵A可以分解为A=LU,且分解唯一。其中L是单位下三角矩阵,U是上三角矩阵。方法: 使用openMP和MPI混合编程现实代码如下:#include "stdio.h"#include "stdlib.h"#i原创 2012-11-19 16:20:01 · 6561 阅读 · 0 评论 -
MPI 实现 SUMMA 矩阵乘法
SUMMA 算法SUMMA 算法和Fox 算法一样,将A , B 和C 划分为相同大小的矩阵,对应放在r×c 二维 mesh 上. 但SUMMA 算法将矩阵乘法分解为一系列的秩nb 修正,即各处理器中的A 和B 分别被分解为nb 大小的列块和行块进行相乘, nb≤min( k/ r , k / c) , 前面所说的分块尺寸就是指nb 的大小. 算法中, 广播实现为逻辑处理原创 2012-11-19 00:48:08 · 5235 阅读 · 0 评论 -
将同一节点上运行的进程划分到同一个通信域
在MPI中,需要将同一个节点上运行的程序划分到同一个通行域中,这样可以使得消息的传递更加快捷和方便,实现代码如下:#include "mpi.h"#include #include #include int main(int argc,char ** argv){ int rank; int size; char myName[100]; int i=0;原创 2012-11-06 17:46:49 · 2005 阅读 · 2 评论 -
创建huffman树
建立HuffMan树,利用的数组指针 #include "stdafx.h"#include "stdio.h"#define MAX 4 //叶节点的数目struct node{ int value; node* left; node *right; node() { left=right=NULL; }}原创 2012-03-14 11:22:03 · 615 阅读 · 0 评论 -
前序中序创建二叉树
前序和中序可以唯一确定一课二叉树,前序可以确定根节点在中序中的位置,在递归简历左右子树。 #include "stdafx.h"#include "stdio.h"struct node{char value;node *left;node *right;};node * creat(char *pre,char *原创 2012-03-20 00:14:34 · 475 阅读 · 0 评论 -
线段树的实现求解格子操作
线段树的原理具体参考百度百科,下面的代码实现的叶子节点不是标准的元线段,而是点!根据具体的需要可以自己设计叶子节点的含义。节点里面包含了常用的max,min,sum域信息。例如: 在[0,7]区间上建立一棵满二叉树: 【0,7】原创 2014-03-14 13:10:04 · 846 阅读 · 0 评论