- 博客(49)
- 资源 (4)
- 收藏
- 关注
原创 谈数系扩充
好早就想写一篇关于数学的文章了,可惜我这人一直很懒,想法在脑里憋了很久才在此时爆发~一方面最近也比较忙,没时间写些东西。其实多写写还是有好处的(尽管我写的不好),从小就缺乏文学素养的我也应该练练了~嘎嘎~ OK~话不多说开始聊咱们的正题吧~首先声明本人不是什么专业叫兽,只是一个学生,所以见解有时难免肤浅。 数学的构建模式都是从一套公理系统出发依次创建其分
2011-12-10 09:49:34
1647
原创 Newton插值
功能:对给定的n+1个点计算Newton插值表,用于计算插值多项式优点: 计算相对与Neville简单公式:f[x0,x1,...xk] 表示k+1个点的newton插值则:算法描述:和Neville算法一样的结构代码:double *newtonInterpolation(double *x, double *y,int n){
2011-12-06 15:40:02
536
原创 逐次线性插值Neville算法
功能: 计算拉格朗日函数在一点的值。优点: 逐点进行运算,后面步骤用带前面的计算结果。输入: 给定的n+1个点 x0,x1,... xn 及y0,y1,... yn 和待求点xt输出: 过给定n+1个点的拉格朗日函数L(x)在xt点的函数值算法描述:设I(n1,n2,n3,...,nk)表示过x(n1),x(n2),...x(nk)的插值结果从两个点开始每怎加一
2011-12-05 20:01:09
4802
原创 求最大可靠路的算法
<br />%% ****************求最大可靠路的算法****************************<br />% 说明: //<br />% 在给定的通信或运输网络中。往往要利用已知的各弧(或边)的可靠性概率, //<br />% 求出指定
2011-04-14 21:48:00
511
原创 求图的两顶点间最短路与次短路
<br />%% ***************求图的两顶点间最短路与次短路***************<br />% 参数说明: //<br />% W表示权值矩阵 //<
2011-04-14 21:46:00
399
原创 求必须通过指定两个点的最短路
<br />%% ****************求必须通过指定两个点的最短路******************<br />% 参数说明: //<br />% W 表示图的权值矩阵, k1表示起点,k2表示终点,t1,t2表示两个指定的点 //<br />% P 表示程序最终的到的路
2011-04-14 21:45:00
613
原创 从一固定点到其他所有点的最短同路
<br />%% ***********从一固定点到其他所有点的最短同路***********<br /><br />%%<br />function [Pm D] = ktonghf(W,k)<br />n = length(W);<br />D = zeros(1,n);<br />for i = 1:n<br /> [p d] = n2shorf(W,k,i);<br /> Pm{i} = p;<br /> D(i) = d;<br />end
2011-04-14 21:44:00
281
原创 求任意连点间最短路
%% ************求任意连点间最短路***************% W 表示图的权值矩阵 //% P 为两顶点k1,k2之间的最短路,顶点以经过次序进行排序 //% u 为最短路的长度 //%%function [P u] = n2shorf(W,k1,
2011-04-14 21:39:00
293
原创 Warshall_Floyd算法
<br />%% **********Warshall_Floyd算法***********<br />% 输入:W 表示图的权值矩阵 //<br />% 输出:P 表示最短路 //<br />% u表示最短路的权和 //<br /><br />%%
2011-04-14 21:38:00
293
原创 求两点间最短路的改进的Dijkstra算法
<br />%% *********求两点间最短路的改进的Dijkstra算法***********<br />% 输入: a表示图的邻接矩阵 //<br />% 输出: a表示所求最短路的距离矩阵 //<br /><br />%%<br />function a = dij2_m(a)<br /><br />% 建立邻接矩阵,若不是邻接矩阵,则变为邻接矩阵<br />
2011-04-14 21:37:00
452
原创 两点间最短路的Dijkstra算法
<br />%% *****************两点间最短路的Dijkstra算法*********<br />% 输入:a 表示图的权值矩阵 //<br />% 输出:d 表示所求最短路的权和 //<br />% index1 表示标号顶点顺序
2011-04-14 21:36:00
531
原创 连通图中各顶点间的最短距离计算
<br />%% **********连通图中各顶点间的最短距离计算********<br />% 输入:W表示图的权值矩阵, //<br />% 输出:D表示图的最短距离矩阵 //<br />% 功能:求连通赋权图最短距离矩阵 //<br /><br />%%<
2011-04-14 21:35:00
680
原创 有向图的关联矩阵和邻接矩阵
<br />%% **************有向图的关联矩阵和邻接矩阵********************<br />% 输入参数:F 邻接矩阵或关联矩阵 f转换参数,0表示邻接矩阵转换为关联矩阵 //<br />% 1表示关联矩阵转换为邻接矩阵 //<br />% 输出: W 转换所得矩阵
2011-04-14 21:34:00
2511
原创 无向图邻接矩阵与关联矩阵的转换
<br />%% **********无向图邻接矩阵与关联矩阵的转换********************<br />% 输入参数:F 邻接矩阵或关联矩阵 f转换参数,0表示邻接矩阵转换为关联矩阵 //<br />% 1表示关联矩阵转换为邻接矩阵 //<br />% 输出: W 转换所得矩阵
2011-04-14 21:33:00
2990
原创 计算图的可达矩阵
<br />%% **********计算图的可达矩阵**********<br />% 输入参数: A 图的邻接矩阵 //<br />% 输出: P 图的可达矩阵 //<br />% 功能:计算可达矩阵 //<br /><br />%% <br />function P = dgraf(A)<b
2011-04-14 21:32:00
1341
1
原创 生成随机图(MATLB)
<br />%% *****************生成随机图***************************<br />% 输入参数 : n顶点数 , m是最大边数(实际生成的图的边数可能小于m) //<br />% 输出: 随机图的邻接矩阵 adj //<br />% 功能:随机生成n个顶点的图,并画出图的网络
2011-04-14 21:31:00
769
原创 编程练习2——最喜欢的数字
<br />Description:<br /> zyf最喜欢的数字是1!所以他经常会使用一些手段,把一些非1的数字变 成1,并为此得意不已。他会且仅会的两种手段是: <br />1.把某个数m除以某个质数p——当然p必须能整除这个数,即m=m/p <br />2.把某个数m减1,即m=m-1 <br />有一天他突发奇想,想把[a,b]区间中所有的数一个一个地变成1,这是一个巨大的无聊的工程,所以他想知道他最少得花多少操作才能达到目 的。<br />Input:输入包含多组数据(100
2011-04-01 21:48:00
920
1
原创 编程练习1——统计数字问题
<br />问题描述:<br /> 一本书的页码从自然数1开始顺序编码直到自然数n。数的页码按照通常习惯编排,每个页码都不含多余的前导数字0.例如:<br />06,006等。数字统计问题要求对给定书的总页数n,统计出书的全部页码中分别用到多少次0,1,2,...,9<br />Input : 数据由"input.txt"文件提供,每个文件只有一行,给出表示书的总页数的整数n。<br />Output : 将程序输出的结果输出到“output”文件中。输出文件有10行,第k行中的数字表示
2011-04-01 21:46:00
1076
1
原创 二叉堆(优先级队列)
<br />二叉堆分为两种,一种是大顶堆,一种是小顶堆。<br />以大顶堆为例,堆得存储用一维数组表示,i结点的左右孩子为2i,2i+1,父亲结点为【i/2】<br />基本操作有:<br />MAX_heapify(A,i);//堆的调整操作<br />bulid_MAX_heap(A,w,size);//创建一个大顶堆<br />maximum(A);//取堆顶<br />extrack_MAX(A);//取堆顶并删除<br />increase_key(A,i,key);//将第i个节点的键值上升到
2011-02-24 21:20:00
339
原创 最小生成树Kruskal算法(查并集)
<br />#include <stdio.h>#define V 9#define E 14int p[V],r[V];void make_set(int x){ p[x]=x; r[x]=0;}int find(int x){ int root,y,temp; y=x; while(p[y]!=y) y=p[y]; root=y;y=x; while(p[y]!=y) { temp=p[y]; p[y]=root;
2011-02-24 09:18:00
616
原创 查并集(不相交数据结构)
<br />用数组来表示森林T,parent[],<br />parent[x]表示x的父亲结点,若parent[x]==x则x为root<br />rank[]表示结点的深度<br />查并集有三个基本操作<br />make_set(x),创建以x为代表的集合<br />find(x),找到包含x集合的代表元素<br />union(x,y)将包含元素x和y的集合和并<br />参考算法导论该算法采用路径压缩技术和按秩合并<br />int parent[N],rank[N];void make_s
2011-02-22 22:33:00
1591
原创 BFS&DFS
次段代码参考算法导论int color[],d[],pi[],f[];int time;void BFS(ALGraph *G,int s){ int i,u,v; EdgeNode *p; for(i=s+1;in+s;i++) { u=i%G->n; color[u]=WHITE; d[u]=NaN; pi[u]=NIL; } color[s
2011-02-21 22:09:00
264
原创 Basic Ant Colony Algorithm for TSP[code]
//**************************************************// // Basic Ant Colony Algorithm for TSP // // C Version // //**************************************************//#include #
2011-02-17 00:29:00
405
原创 堆(Heap )
<br />// Heap 堆的顺序表存储结构typedef int WType; // 权值类型定义为整型typedef struct{ WType *key; // 权值 int total; // 当前堆的总数}Heap;//索引从1开始void shiftUp(Heap &H, int i){ bool done = false; WType temp; if (i == 1)exit(0); // 结点i
2011-02-17 00:25:00
212
原创 任意两点间最短路(Floyd)
<br />多有点对的最短路,Floyd 算法<br />InPut:n×n维矩阵l[1...n][1...n],对应于有向图G=({1,2,...n},E)<br />中的边(i,j)的长度为l[i][j].<br />OutPut:矩阵D,D[i,j]等于i到j的最短距离。<br />public class Floyd{ private static final int NaN = 9999; public static void main(String[] args)
2011-02-17 00:20:00
383
原创 图的表示(邻接表)
图的邻接表表示法 图的邻接表表示法类似于树的孩子链表表示法。对于图G中的每个顶点vi,该方法把所有邻接于vi的顶点vj链成一个带头结点的单链表,这个单链表就称为顶点vi的邻接表(Adjacency List)。1. 邻接表的结点结构(1)表结点结构 ┌────┬───┐ │adjvex │next │ └────┴───┘ 邻接表中每个表结点均有两个域: ① 邻接点域adjvex 存放与vi相邻接的顶点vj的序号j。 ② 链域
2011-02-17 00:17:00
719
原创 Sort
<br />数据结构:采用线性顺序表动态存储结构。<br />InsertSort:<br /> void insertSort(SqList &L)<br /> { /* 对顺序表L作直接插入排序。算法10.1 */<br /> clock_t start, end;<br /> start = clock();<br /> int i,j;<br /> for(i = 2; i <= L.length;++i)<br /> if LT( *
2010-11-15 19:30:00
285
原创 计算派(圆周率)近似值的超小程序
开始看到时觉得很不可思议!#include int a=10000,b,c=2800,d,e,f[2801],g;main(){ for(;b-c;) f[b++]=a/5; for(;d=0,g=c*2;c -=14,printf("%.4d",e+d/a),e=d%a) for(b=c; d+=f[b]*a,f[b]=d%--g,d/=g--
2010-11-15 19:30:00
953
原创 原地归并算法
、原因是对原始算法每次合并都要动态开辟O(n)的空间且全部拷贝的做法耿耿于怀,部分灵感来自编程珠玑第2章的手摇算法。二、代码,01 /**02 * 算法: 交换二对象03 **/04 template05 void t_swap( T& v1, T& v2 )06 {07 T t = v1; v1 = v2; v2 =
2010-11-11 14:00:00
228
原创 gcc的使用
基本规则 gcc所遵循的部分约定规则: .c为后缀的文件,C语言源代码文件; .a为后缀的文件,是由目标文件构成的档案库文件; .C,.cc或.cxx 为后缀的文件,是C++源代码文件; .h为后缀的文件,是程序所包含的头文件; .i 为后缀的文件,是已经
2010-11-10 19:49:00
239
原创 C++中随机数的生成
C语言/C++怎样产生随机数:这里要用到的是rand()函数, srand()函数,C语言/C++里没有自带的random(int number)函数。(1) 如果你只要产生随机数而不需要设定范围的话,你只要用rand()就可以了:rand()会返回一随机数值, 范围在0至RAND_MAX 间。RAND_MAX定义在stdlib.h, 其值为2147483647。例如:#incl
2010-11-10 19:47:00
311
原创 men_fun [STL]
STL中mem_fun和mem_fun_ref的用法 收藏 怎么对容器中的所有对象都进行同一个操作?我们可能首先想到的是用循环来实现。 比如有如下的一个类:class ClxECS{public: int DoSomething() { // 这里以输出一句话来代替具体的操作 cout
2010-11-02 19:36:00
434
原创 for_each [STL]
所需的标头 原型 template inline Function for_each(InputIterator first, InputIterator last, Function F)注意在原型中的类/参数名与在头文件版本不匹
2010-11-01 13:43:00
255
原创 赫夫曼编/译码系统
<br /> <br />赫夫曼编码/译码器<br />l 摘要:<br /> 利用赫夫曼编码进行通信可以大大提高信道利用率,缩短信息传输时间,降低传输成本。这要求在发送端通过一个编码系统对待传输数据预先编码,在接收端将传来的数据进行译码(复原)。对于双工信道(即可以双向传输信息的信道),每端都需要有一个完整的编/译码系统。本文编写了一个简单的赫夫曼码的编/译码小程序。<br /> 本程序主要实现了利用赫夫曼二叉树对一篇英语文档进行编码,对得到的编码利用同一个二叉树解码,最后对解码得到的文档进行测
2010-10-27 16:59:00
205
原创 赫夫曼编/译码系统
利用赫夫曼编码进行通信可以大大提高信道利用率,缩短信息传输时间,降低传输成本。这要求在 发送端通过一个编码系统对待传输数据预先编码,在接收端将传来的数据进行译码(复原)。对于双工信道(即可以双向传输信息的信道),每端都需要有一个完整的编/译码系统。本文编写了一个简单的赫夫曼码的编/译码小程序。
2010-10-27 16:51:00
1193
1
原创 字符统计(HuffmanCode的辅助代码)
Code: //C++file.cpp /*为实现统计字符 给定字符集G{大小写字母∪( ) , . 和space}共26*2+5=57种字符 先用标准字符集给G赋初值 将待统计的文章放入article中,用*号标识文章结尾 统计时用标准字符集与待统计字母集比对相等时 */ #
2010-10-21 22:08:00
359
原创 OperatorOverlod
Code: // operatorrOverlode.cpp /*练习使用操作符的重载特性 有+, #include using namespace std; class Time; ostream & operatorconst Time &T);//友元函数须全局申明!!
2010-10-21 11:27:00
209
原创 Binary Tree Practise(二叉树面向对象编程)
理解二叉树的链式结构的存储 实现二叉树的基本函数 理解二叉树的遍历过程 能够针对递归结构的二叉树进行查询、修改、删除等操作
2010-10-20 21:43:00
694
人工智能算法集
2012-05-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人