信息生物学 谁写过动态规划算法 我只写出了打分矩阵
来源:互联网 发布:什么是组播mac地址 编辑:程序博客网 时间:2024/04/30 11:00
#include<stdio.h>#include<malloc.h>#include<stdlib.h>#include<string.h>typedef struct matrics{ int m,n;//统计字符串输入的长度 char a[200],b[200]; //存储对比序列 int c[200][200];//构造打分矩阵}matricse,* pmatrics;int max(int,int,int); //求三个数中最大值的数void sequence(pmatrics);//输入序列void matrics(pmatrics,int,int,int,int);//构造打分矩阵void main(){ int xx,xy,x,y; //打分规则 printf("A(x,x)= "); scanf("%d",&xx); printf("A(x,y)= "); scanf("%d",&xy); printf("A(x,-)= "); scanf("%d",&x); printf("A(-,y)= "); scanf("%d",&y); char c=getchar(); matricse s; s.a[0]=s.b[0]=' '; sequence(&s); /*printf("%c\n",s.a[0]); printf("%c\n",s.a[1]); printf("%c\n",s.a[2]); printf("%c\n",s.a[3]); printf("%d\n",s.n);*/ matrics(&s,xx,xy,x,y); }void sequence(pmatrics s) //输入比对序列{ s->m=s->n=0; char c; printf("请输入S序列,以空格结束输入\n"); while(c=getchar()) { if(c==' ') break; else { s->a[++s->m]=c; } } printf("请输入T序列,以空格结束输入\n"); c=getchar(); while(c=getchar()) { if(c==' ') break; else { s->b[++s->n]=c; } }}void matrics(pmatrics s,int xx,int xy,int x,int y) //构造打分矩阵{ int i,j; int v1,v2,v3; //算最大的分值s->c[0][0]=0;for(j=1;j<=s->n;j++) //构造行{ s->c[0][j]=s->c[0][j-1]+y;}for(i=1;i<=s->m;i++) //构造列{s->c[i][0]=s->c[i-1][0]+x;}/*for(j=0;j<=s->n;j++){ printf("%d ",s->c[0][j]);}printf("\n");for(j=0;j<=s->m;j++){ printf("%d ",s->c[j][0]);}*/ for(i=1;i<=s->m;i++) //构造剩下的矩阵行数和列数{for(j=1;j<=s->n;j++){if(s->a[i]==s->b[j]){v1=s->c[i-1][j-1]+xx;}else{v1=s->c[i-1][j-1]+xy;}v2=s->c[i-1][j]+x;v3=s->c[i][j-1]+y;s->c[i][j]=max(v1,v2,v3);}}//输出矩阵printf(" "); for(j=0;j<=s->n;j++)printf("%3c ",s->b[j]);printf("\n\n");for(i=0;i<=s->m;i++){printf("%c ",s->a[i]);for(j=0;j<=s->n;j++){printf("%4d ",s->c[i][j]);}printf("\n\n");} }int max(int a,int b,int c){int t=0;if(a>=b)t=a;elset=b;if(t>=c)return t;elsereturn c;}
信息生物学 谁写过动态规划算法 我只写出了打分矩阵 ,写过的给我看看吧
- 信息生物学 谁写过动态规划算法 我只写出了打分矩阵
- 算法练习六 动态规划 矩阵相乘
- 算法导论 动态规划 矩阵链乘法
- 动态规划算法之矩阵链乘法
- 算法[动态规划]-矩阵连乘问题
- 动态规划算法之矩阵链式乘法
- 矩阵连乘--动态规划算法
- 矩阵连乘的动态规划算法
- 矩阵连乘动态规划算法
- 总算是过了动态规划这一关了
- 夜深人静写算法(2):动态规划
- 写了个jquery星星打分效果
- Java算法3--动态规划算法实现矩阵连乘
- 我写过最长的东西可能就是高考作文了
- 如果div只写了position:absolute,他的父元素没有写,relative,那他针对于谁?
- 矩阵链动态规划
- 【jzoj4901】【矩阵】【动态规划】
- 数字矩阵 动态规划
- mysql学习足迹之一【linux环境下源码安装mysql-5.5.25版本数据库】
- use WebKit as the Browser's underlying renderer
- ubuntu 命令行 apt-get 代理 上网
- js中substring 和substr的区别
- android读写cookie的方法
- 信息生物学 谁写过动态规划算法 我只写出了打分矩阵
- Sql查询插入临时表
- mysql命令行下的一些使用
- android传感器学习之采样率和属性
- 堆和栈
- android系统图标的使用
- in the office
- dbf文件数据导入数据库
- 自定義Dialog去除背景陰影