算法
文章平均质量分 74
风陵渡口
hi
展开
-
匈牙利算法的一个实现
#include void main() { int T,m,n,i,j,k,M[100][100],N[101][101],temp,col,row,c,r; char F[101][101]; scanf("%d",&T); for(i=0;i { getchar(); scanf("%d %d",&m,&n); for(j=0;j { get原创 2014-04-30 10:24:49 · 791 阅读 · 0 评论 -
一个数列问题的解题思路及实现
时间限制:2000ms 单点时限:1000ms 内存限制:256MB 描述 大神同学是一个热爱数字的孩子,她无时无刻不在思考生活与数学的联系。有一天,她发现其实公历的设计是有讲究的。 每4年就会多闰一天,每一百年又会有一年不是闰年,而第四百年又是闰年。这样,这四百年的周期里每一年平均有365又400分之97天。 大神同学将上面的规律简记为100-4+1=97。原创 2014-04-30 11:01:03 · 665 阅读 · 0 评论 -
c++实现的最小堆类
#include using namespace std; template class MinHeap{ public: void HeapInitialize(T a[],int size,int ArraySize); MinHeap &Insert(const T &x); MinHeap &Dele原创 2014-07-16 19:55:15 · 1757 阅读 · 0 评论 -
Dijkstra算法的一个普通实现
Dijkstra算法使用了广度优先搜索解决非负权有向图的单源最短路径问题,算法最终得到一个最短路径树。原创 2014-06-29 17:11:04 · 517 阅读 · 0 评论 -
顺时针循环增长的数组
问题描述: /* *input n, print the cube. *in the example, n = 5 *1 2 3 4 5 *16 17 18 19 6 *15 24 25 20 7 *14 23 22 21 8 *13 12 11 10 9 */ 思路都很容易想到,就是创建一个数组,然后顺时针螺旋就行了,下面是原创 2014-05-31 16:55:07 · 738 阅读 · 0 评论 -
求1+2+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及条件判断语句(A? B:C)
题目:求1+2+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及条件判断语句(A? B:C) 这道题确实有点偏,网上大部分人给出的solution都是用递归。 public int sum(int n) { if(n==1) return 1; else原创 2014-07-12 23:19:37 · 4827 阅读 · 1 评论