当前位置: 首页 > news >正文

哪里网站做的好大连大型网站制作公司

哪里网站做的好,大连大型网站制作公司,东营市河口区建设局网站,网站开发亿玛酷定制#x1f389;欢迎大家收看#xff0c;请多多支持#x1f339; #x1f970;关注小哇#xff0c;和我一起成长#x1f680;个人主页#x1f680; #x1f451;目录 分析#xff1a;#x1f680; 数字层面分析⭐ 字符串层面分析⭐ 代码及运行结果分析:#x1f6… 欢迎大家收看请多多支持 关注小哇和我一起成长个人主页 目录 分析  数字层面分析⭐ 字符串层面分析⭐ 代码及运行结果分析: 代码⭐ 运行结果​编辑⭐ 具体分析⭐ 题目  分析  数字层面分析 先来看在二进制中 101000110 如果两个多位的二进制数相加就还要考虑是否向前一位进1的问题显然上面的三个式子中只有 110是需要向前进一位的。 考虑了向前进位的问题还要考虑当前位的数字相加是否要多加一个来自上一位进的1即当前位的上一位如果进1了的话那么当前位相加是需要加上这个进的 1 前一位没有进 1前一位进 11和0相加10 1不向前一位进1101 0向前进11和1相加11 0向前进1111 1向前进10和0相加00 0不向前进1001 1不向前进1 因此我们可以知道10、00、11这三种情况的结果都有两种情况 并且当 11 相加的时候一定会向前进一位 00 相加的时候一定不会进一位 而 01 时就会有进一位和不进一位两种情况即它的上一位的两个数相加进了一位那么01才会向前进一位它的上一位两个数没有向前进位那么01就不会进位 字符串层面分析 计算数字时我们都会右对齐来计算但是在代码中我们习惯从左到右来分析解决问题因此我们可以将字符串反转计算完后在反转回来就能够得到原来的字符串相加的结果 这里需要用到StringBuilder类和StringBuffer类的reverse()方法来反转字符串它会修改调用的对象而不是新建一个对象 str.reverse();//将字符串str反转 两个字符串的长度如果不相同我们可以给较短的字符串反转之后再末尾添加上0来计算并且不会影响结果。 str.append(hello);//给字符串str尾部追加一个hello 代码及运行结果分析: 代码 import java.util.Scanner; public class Test {public static void main(String[] args) {//输入两个字符串a和b字符串内容为二进制数字求两个字符串相加的结果// 加法计算方法以二进制方式计算并返回对应的字符串结果。要求程序尽可能的高效。//字符串长度不超过100Scanner in new Scanner(System.in);while(in.hasNextLine()){String str1 in.nextLine();String str2 in.nextLine();Solution solution new Solution();String ret solution.solve(str1,str2);System.out.println(ret);}}static class Solution {public String solve(String str1, String str2) {int len1 str1.length();int len2 str2.length();int maxLen Math.max(len1,len2);StringBuilder strB1 new StringBuilder(str1).reverse();StringBuilder strB2 new StringBuilder(str2).reverse();StringBuilder str new StringBuilder();Boolean flag false;//代表不进位for(int i 0;i maxLen;i){char ch1 i len1?strB1.charAt(i):0;char ch2 i len2?strB2.charAt(i):0;if(ch10ch20){str.append(flag?1:0);flag false;//相加为0,不用进一}else if(ch1 1 ch2 1){str.append(flag?1:0);flag true; //相加要进1}else{str.append(flag?0:1);//注意}}if(flag true){str.append(1);}return str.reverse().toString();}} } 运行结果 可以看到我们成功解决了这个题目  具体分析 StringBuilder strB1 new StringBuilder(str1).reverse();StringBuilder strB2 new StringBuilder(str2).reverse(); 这两行代码就第一行来说 new StringBuilder(str1)创建了一个StringBuilder类的对象并将对象的内容初始化为字符串str1的内容然后再.reverse()将内容反转。strB1变量引用了这个对象。 char ch1 i len1?strB1.charAt(i):0; char ch2 i len2?strB2.charAt(i):0; 这两行代码是来判定是否需要给当前为添加一个0 注意相加过程的0和1相加的代码由前面的数字层面分析我们知道0和1相加是否需要进1取决于它的上一位相加是否进1所以我们不需要在这里写flag true或者false写了就会错 if(ch10ch20){str.append(flag?1:0);flag false;//相加为0,不用进一 }else if(ch1 1 ch2 1){str.append(flag?1:0);flag true; //相加要进1 }else{str.append(flag?0:1);//注意 } 代码的后面写这个是因为当字符串最后两个0或1相加完后如果是两个1相加就还要再进1 if(flag true){str.append(1);} 本次题目分析结束啦感谢支持 如有高见来评论区发言吧~ 喜欢请三连哦❤️再次感谢
http://www.hkea.cn/news/14571969/

相关文章:

  • iis7网站建设无法连接wordpress
  • 临沂制作网站软件上海做网站hlanggroup
  • 兰山区住房和城乡建设局网站怎么做淘宝联盟网站推广
  • 重庆网站推广步骤抖音推广方式
  • 南通企业网站seo婚庆公司电话号码
  • 业务推广网站合肥小吃培训网页设计
  • 彩票网站开发极云公司门户网站的设计与实现
  • 邯郸网站设计申请vs2008怎么做网站
  • 现在还有没有做任务的网站湖北省住房和城乡建设厅官网
  • 北京智能网站建设哪里好网站推广的步骤
  • 免费开网站能免费建手机网站吗
  • 做网站 如何注册公司专业搭建网站公司
  • 北京专业网站改版公司做货运代理网站
  • 做一个国外的网站发布摄影作品的平台
  • 网站支付宝支付接口申请山东省住房和城乡建设部网站
  • 网站开发费用会计分录wordpress创建配置文件
  • 正规免费网站建设公司wordpress寺院模板
  • 代理记账网站模板外包服务美剧
  • 北京赛车网站开发网站建设柚子网络科技官网
  • 西安网站建设王永杰关于学校网站建设经费的申请报告
  • 旅游酒店网站建设背景分析青岛seo关键词优化公司
  • 网站设计的提案北京商标注册
  • 网站过期后多长时间不续费就完了微信公众号网站怎么做
  • 自助建网站哪个好整改网站建设情况
  • 淘宝网站建设情况医院科室网站建设
  • 阿里巴巴网站推广方法wordpress标题去掉私密
  • 海口网站建设网页制作公司前端网页设计样例
  • o2o网站制作公司wordpress paypal收款
  • 安防网站模板织梦建站教程全集
  • 网站的推广和优化方案鄞州seo整站优化服务