我写的HashTable

//HashTable.h #include<iostream>const int defaultsize = 100;enum KindOfStatus{ Active,Empty,Deleted};template<class E,class K>struct ChainNode{ E data; ChainNode<E,K> *link;};template<class E,class K>class HashTable{private: int divisor; //除数,必须是质数 i...
2008-08-01 11:12 | 阅读 4840 次 | 评论 1 条

排序(1)

#include<iostream>#include<ctime>#define Swap(i,j) {int s = (i); (i) = (j); (j) = s;}const int MAXSIZE = 30;int array[MAXSIZE];/*直接插入排序基本思想:当插入第I个元素时,前面的V[0],V[1]....V[I-1]已经排好序,这时用V[I]的排序码与V[I-1],V[I-2]....的排序码进行比较,找到插入位置即将V[I]插入,原来位置上的元素向后移.*/void InsertSort(int (&amp;array)[MAXSIZE],const int ...
2008-08-01 11:02 | 阅读 2997 次 | 评论 0 条

稀疏矩阵转置

/* -------------存储结构-三元组----------------- #define MAXSIZE 10000 /*非0元素个数最大值10000*/ typedef struct{ int i,j; /*非0元素的行、列下标*/ ElemType e; /*非0元素值*/ }Triple; typedef struct{ /*稀疏距阵存储结构*/ Triple data[MAXSIZE+1];/...
2008-04-15 10:32 | 阅读 2964 次 | 评论 0 条

写一个创建稀疏矩阵相应三元组的算法。

创建稀疏矩阵相应三元组的算法如下所示: #define MAXSIZE 1000 /*假设非零元个数的最大值是1000*/ typedef struct { int i, j; elemtype v; }triple; typedef struct { triple data[MAXSIZE+1]; /*data[0]用于存放稀疏矩阵行,列和非零元个数*/ int mu, nu, tu; /*稀疏矩阵行、列和非零元的个数*/ } spmatrix; spmatrix a; void CreatTripleTable (int array_a[M][N],spm...
2008-04-15 10:29 | 阅读 3863 次 | 评论 0 条

“魔方阵”算法&amp;稀疏矩阵三元组算法

用二维数组实现"魔方阵"的打印,所谓“魔方阵”是指满足每一行,每一列和对角线上的元素之和均相等的方阵。如: 8 1 63 5 74 9 2 就是一个三阶的魔方阵。现在要求编程实现任意输入一个自然数n,打印出相应的n阶魔方阵。 参考答案: 打印“魔方阵”算法如下所示: void MagicMatrix( ) { int a[16][16],i,j,k,p,m,n; p=1; while(p==1) /*输入1~15的奇数*/ { printf("Please input n(n=1~15)\n"); scanf("%d",&amp;...
2008-04-15 10:26 | 阅读 4038 次 | 评论 0 条
浏览56293次
最新评论