• 大数据学习--day04(选择结构、循环结构、大数据java基础面试题)


    选择结构、循环结构、大数据java基础面试题

    switch:

    注意:  

    byte short int char String(jdk1.7支持)

    不能是 long float double boolean 

    while、do-while、for同c#

    面试题:

    大数乘法:随机给定两个超大整数,计算乘积。

    思路:AB*CD = AC(BC+AD)BD

     public static void main(String[]arg)
        {
    
            String i1="111111111111111";
            String i2="222222222222222";
    //        String i1="52";
    //        String i2="63";
            char[] a1=i1.toCharArray();
            char[] a2=i2.toCharArray();
            int [] n1=new int[a1.length];
            int [] n2=new int[a2.length];
            int [] n=new int[a1.length+a2.length];
    
            for(int i=0;i<a1.length;i++)
            {
                n1[i]=a1[i]-(int)('0');
            }
            for(int i=0;i<a2.length;i++)
            {
                n2[i]=a2[i]-(int)('0');
            }
    //        for(int i=0;i<a1.length;i++)//正着来加,要留一位,防止进位
    //        {
    //            for (int j=0;j<a2.length;j++)
    //            {
    //                n[i+j+1]+=n1[i]*n2[j];//?   n[i+j]+=n1[i]*n2[j]会在后面多个0
    //            }
    //        }
            for (int j=a2.length;j>0;j--)//反着来加
            {
                for(int i=a1.length;i>0;i--)
                {
                    n[i+j-1]+=n1[i-1]*n2[j-1];//?   n[i+j]+=n1[i]*n2[j]会在后面多个0
                }
            }
            //满十进位,从后往前
            for(int i=n.length-1;i>0;i--)
            {
                n[i-1]+=n[i]/10;
                n[i]=n[i]%10;
            }
            String str="";
            for(int i=0;i<n.length;i++)//i从0开始,预留做进位
            {
                str+=""+n[i];
            }
            System.out.println(str);
        }

     十进制转二进制利用无符号右移和1&运算巧妙实现:

     public static void main(String[ ] args)
        {
            Scanner sc=new Scanner(System.in);
            System.out.println("输入一个数");
            int n=sc.nextInt();
    
            for(int i = 31;i >= 0; i--)
            {
             //倒着从0开始写,移动32次,>>>在前面补0,&1只有最后一位是1,所以做到了每次只比较一位数
                System.out.print(n >>> i & 1);
            }
    
        }
  • 相关阅读:
    开发工具(四)
    开发工具(三)
    调试(二)
    调试(一)
    jsp乱码解决大全(转自csdn一高手)
    开发工具(二)
    开发工具
    在 SQL Server 2000 中对链接服务器运行分布式事务在您安装 Windows Server 2003 或 Windows XP Service Pack 2 时可能收到 7391 错误信息
    蓝桥杯试题
    How to lay pipelines
  • 原文地址:https://www.cnblogs.com/symkmk123/p/9643211.html
Copyright © 2020-2023  润新知