算法导论 练习题 2.1-4
来源:互联网 发布:空电脑怎么装系统 知乎 编辑:程序博客网 时间:2024/05/16 23:36
#include <stdio.h>#define MAXLEN 100//进位函数,返回更新后数组长度int binCarry(int a[],int len){ int carry=0,l=len; for(int i=0;i<len;i++) { a[i]+=carry; carry=0; if(a[i]>1) { carry+=a[i]/2; a[i]%=2; if(i==len-1) { a[len]=1; l++; } } } return l;}//二进制相加函数,返回“和数组”长度int binAdd(int a[],int b[],int sum[],int alen,int blen){ int i,j,len=alen; //两个二进制相加,先不进位 for(i=0,j=0;i<alen&&j<blen;i++,j++) { sum[i]=a[i]+b[j]; } if(i>=alen && j< blen) { while(j<blen) { sum[j]=b[j]; j++; } len=blen; } if(j>=blen && i<alen) { while(i<alen) { sum[i]=a[i]; i++; } len=alen; } //开始进位 len=binCarry(sum,len); return len;}int main(){ //倒序存放二进制数,a=11001,b=10111 int a[MAXLEN]={1,0,0,1,1}; int b[MAXLEN]={1,1,1,0,1}; int i,len; int sum[MAXLEN]; len=binAdd(a,b,sum,5,5); //倒序打印结果 for(i=len-1;i>=0;i--) { printf("%d",sum[i]); } getchar();}
0 0
- 《算法导论》练习题 2.1-4
- 算法导论 练习题 2.1-4
- 算法导论 练习题 2.1-2
- 算法导论 练习题 2.3-4
- 算法导论 练习题 3.2-4
- 算法导论 练习题 4.1-4
- 算法导论 练习题 4.3-4
- 算法导论 练习题 5.2-4
- 算法导论 练习题 5.3-4
- 算法导论 练习题 5.3-4
- 算法导论 练习题 6.1-4
- 算法导论 练习题 8.1-4
- 算法导论 练习题 8.4-4
- 算法导论 练习题 10.4-4
- 算法导论 练习题 11.1-4
- 算法导论 练习题 11.2-4
- 算法导论 练习题 11.3-4
- 算法导论 练习题 13.1-4
- 本地和Linux服务器之间下上传下载文件
- 一道程序题
- 学习笔记——Maven pom.xml配置详解
- LeetCode 2 -Add Two Numbers
- mysql权限管理
- 算法导论 练习题 2.1-4
- 文章标题
- 干货:解码OneData,阿里的数仓之路。
- 日常发题
- 程序中的数学表达式
- 【图像特征提取1】方向梯度直方图HOG---从理论到实践------附带积分图像的解析
- 最小值到最大值的随机数
- 基于How To Tango With Django 1.9的重新实践(8)——Templates
- 【阿里云网站日志分析实践】通过Log Service日志服务导入MaxCompute分析