书签 分享 收藏 举报 版权申诉 / 42
上传文档赚钱

类型[工程科技]强化复习之常用算法课件.ppt

  • 上传人(卖家):晟晟文业
  • 文档编号:4635313
  • 上传时间:2022-12-27
  • 格式:PPT
  • 页数:42
  • 大小:465.52KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《[工程科技]强化复习之常用算法课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    工程科技 工程 科技 强化 复习 常用 算法 课件
    资源描述:

    1、2022-12-271j=0;while(m0)aj+=m%n;m=m/n;2022-12-272 辗转相除法r=m%n;while(r0)m=n;n=r;r=m%n;2022-12-2732022-12-274for(i=2;isqrt(m)“m为素数”2022-12-275while(fabs(b-a)eps)h=(a+b)/2;if(f(h)=0)break;if(f(a)*f(h)eps);32022-12-277x1=3;do x0=x1;x1=x0+(b-x0)/(f(b)-f(x0)*f(x0);while(fabs(x1-x0)eps);2022-12-278for(i=1;i

    2、行数;i+)for(j=1;j第i行首字符位置;j+)printf(“);for(j=1;j第i行字符个数;j+)printf(aij);printf(“n”);*变形:(1)如果图形是左对齐,则第二行可删去;(2)如果图形不是左对齐,首先左对齐,再计算相关参数;升序2022-12-279for(i=0;in-1;i+)for(j=0;jaj+1)“交换aj,aj+1”变形:(1)降序 (2)每一轮求最小者 (3)当某一轮已有序,终止排序过程 (4)效率最低的排序;(5)每一轮只比较一次;被比较的两个数始终相邻 升序2022-12-2710 for(i=0;in-1;i+)for(j=i+1;

    3、jaj)“交换ai,aj”每轮和同一个数比较 升序2022-12-2711for(i=0;im)break;if(i=n-1)an-1=m;else for(j=n-1;ji;i-)aj=aj-1;ai=m;升序2022-12-2712while(i n&jm)if(ai+bj+)ck+=bj;else ck+=ai+;ck+=bj+;if(in)for(i=j-1;im;i+)ck+=bi;else for(j=i-1;jn;j+)ck+=aj;a升序b升序c升序nmmain()int s,t,l,no30,j,k,p30;float a306;for(j=0;j30;j+)pj=j;/*序

    4、号赋初值序号赋初值for(j=0;j30;j+)scanf(“%d”,&noj);for(s=0,k=0;k5;k+)/*第第J个人的总分个人的总分*/scanf(“%d”,&ajk);s+=ajk;aj5=(float)s/5;/*第第J个人的平均分个人的平均分*/30个学生5门成绩 30个学生的编号 30个学生的成绩排序for(j=0;j29;j+)/*变形的选择排序变形的选择排序*/l=j;/*每轮只交换一次每轮只交换一次*/for(k=j+1;k30;k+)if(apl5apk5)l=k;t=pj;pj=pl;pl=t;for(k=0;k30;k+)for(j=0;j6;j+)prin

    5、tf(“%4d,%4.1f”,nopk,apkj);printf(“n”);#include“string.h”main()char a100,*str10,*sp;int i,k;char*temp;sp=a;/*难点难点*/for(i=0;i10;i+)printf(“Input a string(9 character):”);gets(sp);stri=sp;sp+=10;10个字符串都放在数组个字符串都放在数组a中中每个串的首地址放在字符指每个串的首地址放在字符指针数组针数组str中中aaabbbcccfor(k=0;k9;k+)for(i=k+1;i10;i+)if(strcmp(

    6、stri,strk)0)temp=stri;stri=strk;strk=temp;/*尽量少用尽量少用strcpy*/for(i=0;ileft)mid=(right+left)/2;if(amid=m)p=1;break;/*找到找到*/if(amid=right)return 0;/*没找到没找到*/if(amidm)find(mid,right,m);lse find(left,mid,m);for(p=1,i=0;in;i+)min=ai0;for(j=0;jm;j+)if(aijmin)min=aij;k=j;for(j=0;jmin)p=0;break;注意:(1)nn矩阵主要边

    7、线的方程;(2)矩阵的输入和输出;amnfor(i=0;in;i+)for(j=0;jn;j+)cij=0;for(k=0;k=0;i-)for(j=m;j=0;j-)ck=ai+bj+d;if(ck10)d=ck/10;ck=ck%10;k+;abc方法1:函数名不是形参 h=(b-a)/n;for(s=(f(a)+f(b)/2;i=1;in;i+)s+=f(a+i*h);s=s*h;abia+i*hf1*h+f2*h+f2*h+=(f1+f2+f3+)*h方法2:函数名是形参 float integer(float(*f)(),float a,float b,int n)float h,s

    8、;int i;h=(b-a)/n;for(s=(*f)(a)+(*f)(b)/2;i=1;ieps)s+=t;t=t*x/k+;方法2:t=x;s=0;k=1;while(fabs(t)eps)s+=t;m=1;n=1;k+;for(i=1;i=k;i+)m=m*i;n=n*x;t=m/n;23s=x+.+.2!3!kxxxkmnt23(k+1)35s=x-+-.+(-1)+.2!3!24s=x+.3!5!kxxxkxx扩展:p=1;left=0;right=strlen(m);while(left0)n+=n*10+a%10;a=a/10;if(m=n)“回文数”;m=12321m=1234

    9、5main()char s81,*pi,*pj;int i,j,n;gets(s);pi=s;n=strlen(s);pj=s+n;或或 while(*s+!=0);pj=s;while(pi!=pj)&(*pi+=*pj-);if(pilenmax)strcpy(strmax,str);lenmax=len;len=0;puts(strmax);#include“stdio.h”char a100;int n,i,big,f,t;testword()int j,k;char c,s26=;j=i;k=0;while(ai=a)&ai=z;c+)if(sc-97!=&sc-97!=0)k+;i

    10、f(kbig)big=k;f=j;t=i-1;main()int n=-1;do n+;an=getchar();while(an!=#);getchar();big=0;j=1;while(i=a)&ai=z)testword();else i+;for(i=f;i=n;i+)putchar(ai);putchar(n);#include“stdio.h”main()int i,maxlen,len;char inline10100,maxline100;FILE*fp;if(fp=fopen(“myf1.out”,”ow”)=NULL)EXIT(1);for(i=0;i10;i+)gets

    11、(inlinei);fprintf(fp,”%sn”,inlinei);maxlen=0;for(i=0;imaxlen)strcpy(maxline,inlinei),maxlen=len;fprintf(fp,”max string is:%sn maclen=%dn”,maxline,maxlen);fclose(fp);strlenth(charp;int len)len=0;while(plen!=0)+len;建立链表(返回链表头指针,当链表的建立链表(返回链表头指针,当链表的值域为值域为-999时,建立链表过程结束)时,建立链表过程结束)输出变量:输出变量:h指向链表头。指向链表

    12、头。输入变量:输入变量:q指向新分配结点。指向新分配结点。辅助变量:辅助变量:p指向链表尾。指向链表尾。主要思路:主要思路:(1)p-next=q;(2)p=q;(3)scanf(“%d”,&p-data);(4)q=(struct student*)malloc(sizeof(struct student);102030hpq102030hqp102030hpq40102030hp40q说明:(1)主函数改为子函数(返回链表头指针)struct student*creat()return(h):(2)用typedef struct student;REC;可把 q=(struct student*)malloc(sizeof(struct student);缩写为:q=(REC*)malloc(sizeof(REC);(3)新分配的结点是不是尾结点是人为规定的。输入变量:h指向链表头,m待插结点的后继结点数据。输出变量:h。中间变量:p指向当前结点;q指向p的后继结点;r指向待插结点;主要思路:当p指向待插结点的后继结点(p-data=m),则(1)q-next=r;(2)r-next=p(2)释放p、q和r;否则(1)q=p;(2)p=q-next;直到p=NULL qpr

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:[工程科技]强化复习之常用算法课件.ppt
    链接地址:https://www.163wenku.com/p-4635313.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库