全文预览

算法与数据结构

上传者:学习一点 |  格式:docx  |  页数:24 |  大小:173KB

文档介绍
处理的j的倍数从2开始到产kvSIZE*/inta[SIZE];/*下标表示整数内容判断是否为质数*/int*p;/*控制循环*/for(l=2;l<=200;l++){printf(H%d”,l);}printfC*\n200以内的素数有:H);for(p=a;p<a+SIZE;++p){/*初始化数组全是TRUE*/邛=TRUE;}a[0]二afll二FALSE;/*设置前面两个不是质数的数的状态为FALSE*/i=2;while(i<SIZE){/*找到下一个质数*/while(a[i++]==TRUE){j二i・l;break;}for(k=2;j*k<SIZE&&ivSIZE;卄k){/*处理质数的倍数*/a[j*k]=FALSE;}}for(p=a;p<a+SIZE;++p){/*打印出质数*/if(*p==TRUE){printf(u%8dM,p-a);}}printf(H\nn);return0;数据删除问题编写删除具冇N个数据项的数组A中所冇重复项的程序,返回A屮仍冇的数据项。要求运行时间在0(NlogN)o采用类语言定义相关的数据类型typedefstructStackNode{?//结点结构体chardata;struetStackNode*next;}StackXode,*LinkStackPtr;typedefstructLinkStack{?//链栈结构体LinkStackPtrtop;intcount;}LinkStack;算法设计•产生随机数组。•利用随机数组创建链表。3.用x数组中的n个数据创建一个单链表,返回表头节点地址。4•删除重复节点:递归函数。5.从输入参数节点岀发,删去值相同的多余节点的算法。函数的调用流程图调试分析1.起初设置的是自己输入一组数组,在进行删除,不过问题是过于繁琐,处理方法是随机出现数组。2•时间复杂度是0(n);

收藏

分享

举报
下载此文档