C语言连续子向量的最大和及时间度量实例
2023-06-13 09:15:45 时间
本文实例分析了C语言连续子向量的最大和及时间度量,分享给大家供大家参考之用。具体方法如下:
#include<stdio.h> #include<time.h> #include<stdlib.h> #defineSCALE3000 intmaxnum(inta,intb); intmain(intargc,charconst*argv[]) { FILE*fp; fp=fopen("maximum.in","r"); //intx[]={1,12,-11,10,-65,54,22,-9,21,5,48,5,-8,-2,56,54,-88,-5,2,-8,554,-56,35,-55,555,-65,-545,-23,48,-5,88,-56,16,-8}; int*x=(int*)malloc(sizeof(int)*(SCALE+1)); intxi=SCALE,a=0,num_in=0; while(xi--){ fscanf(fp,"%d",&x[a++]); } clock_tstart,end; //***Algorithm-1cube*** start=clock(); intmax=0; intlength=SCALE; inti,j,k; for(i=0;i<length;++i) { for(j=i;j<length;++j) { intsum=0; for(k=i;k<=j;++k) { sum+=x[k]; } max=maxnum(max,sum); } } //longnum=10000000L; //while(num--); end=clock(); doubletimes=(double)(end-start)/CLOCKS_PER_SEC; doubledend=(double)end; printf("\n***Algorithm-1cube***\n"); printf("end:%f\n",dend); printf("Timeconsuming:%f\n",times); printf("%d\n",max); //***Algorithm-2square*** start=clock(); max=0; for(i=0;i<length;++i) { intsum=0; for(j=i;j<length;++j) { sum+=x[j]; max=maxnum(max,sum); } } end=clock(); times=(double)(end-start)/CLOCKS_PER_SEC; dend=(double)end; printf("\n***Algorithm-2square***\n"); printf("end:%f\n",dend); printf("Timeconsuming:%f\n",times); printf("%d\n",max); //***Algorithm-3linear*** start=clock(); max=0; intmax_end_here=0; for(i=0;i<length;++i) { max_end_here=maxnum(max_end_here+x[i],0); max=maxnum(max,max_end_here); } end=clock(); times=(double)(end-start)/CLOCKS_PER_SEC; dend=(double)end; printf("\n***Algorithm-3linear***\n"); printf("end:%f\n",dend); printf("Timeconsuming:%f\n",times); printf("%d\n",max); free(x); x=NULL; return0; } intmaxnum(inta,intb) { returna>b?a:b; }
感兴趣的朋友可以测试运行一下本文实例以加深理解。希望本文所述对大家C程序设计的学习有所帮助。
相关文章
- python小实例-生成不重复的、x个中文姓名
- 解析实例,5G 毫米波加边缘云带来全新应用场景
- IP协议重点总结(附实例)
- Redis整合Spring结合使用缓存实例
- Redis教程(十五):C语言连接操作代码实例
- linux用户和组命令实例分析【切换、添加用户、权限控制等】
- Java面向对象接口的应用实例练习详解编程语言
- MySQL实践:学习C语言语法(c使用mysql实例)
- 「Linux下C语言多线程实例」(linuxc多线程实例)
- MSSQL表类型变量使用实例(mssql 表类型的变量)
- MySQL代码实例快速掌握C语言编程(c mysql代码实例)
- 如何使用jquery控制CSS样式,并且取消Css样式(如背景色,有实例)
- C#拓展方法的简单实例
- PHPURL路由类实例
- C语言中的回调函数实例
- C语言栈的表示与实现实例详解
- 基于C语言实现五子棋游戏完整实例代码
- jQuery创建DOM元素实例解析
- python中的hashlib和base64加密模块使用实例
- C语言柔性数组实例详解
- C语言中qsort函数用法实例小结
- C语言实现图的遍历之深度优先搜索实例
- C语言实现最大间隙问题实例