大数据学习--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);
} }
大数据学习--day04(选择结构、循环结构、大数据java基础面试题)的更多相关文章
- Java流程控制以及顺序、选择、循环结构
目录 用户交互Scanner Scanner对象 hasNext()与next() hasNextLine()与nextLine() Scanner进阶用法 求和与平均数 顺序结构 选择结构 if单选 ...
- PYTHON 100days学习笔记004:循环结构
目录 Day04 - 循环结构 1. 循环结构的应用场景 2.for-in循环 3. while循环 4. 练习 4.1 输入一个数判断是不是素数. 4.2 输入两个正整数,计算最大公约数和最小公倍数 ...
- Bash脚本编程学习笔记07:循环结构体
本篇中涉及到算术运算,使用了$[]这种我未在官方手册中见到的用法,但是确实可用的,在此前的博文<Bash脚本编程学习笔记03:算术运算>中我有说明不要使用,不过自己忘记了.大家还是尽量使用 ...
- Java基础(三)选择和循环结构
一.选择结构,条件判断 1.if 语句 一个 if 语句包含一个布尔表达式和一条或多条语句.如果布尔表达式的值为 true,则执行 if 语句中的代码块,否则执行 if 语句块后面的代码. impor ...
- day_4流程控制之分支结构循环结构及for循环
复习一下昨天的内容 1:变量的命名规范 只能由数字 字母 及下划线组成 不能以数字开头 不能与系统关键字重名 _开头有特殊含义 __开头__结尾的变量是魔法变量 支持大小驼峰 ,但建议使用下划线连接语 ...
- java里的分支语句--程序运行流程的分类(顺序结构,分支结构,循环结构)
JAVA里面的程序运行流程分三大类: 1,顺序结构:顺序结构就是依次执行每一行代码 2,分支结构:分支结构就是按不同的条件进行分支 3,循环结构:一段代码依条件进行循环执行. 其中,分支结构有两大类: ...
- java 基础 03 运算符 分支结构 循环结构
今天内容: (1)运算符 (2)分支结构 (3)循环结构 1运算符 1.1赋值运算符 (1)简单赋值 = 表示赋值运算符,用于将=右边的数据赋值给=左边的变量来覆盖原来的数值. 笔试题: ia == ...
- Shell脚本之七 选择、循环结构
一.if else if 语法格式 if condition then command1 command2 ... commandN fi 写成一行(适用于终端命令提示符): if [ $(ps -e ...
- java顺序、选择、循环结构
一.顺序结构 二.选择结构 1.if都执行 2.if else if else 条件满足才执行 3.选择结构switch 一个case后有多条语句要加花括号 多个case的值不能相同 case中要加b ...
随机推荐
- IEEP部署企业级网络工程-OSPF邻居关系故障排除
OSPF邻居关系故障-现象与排除 一.OSPF邻居关系故障-现象与排除 1.OSPF建立邻居关系时,将检验hello报文中的Area ID .Autype.Authentication.network ...
- 高质量C++C编程指南笔记 标签: c++笔记 2015-11-22 20:59 179人阅读 评论(0) 收藏
1. 在多重循环中,如果有可能,应当将最长的循环放在最内层,最短的循环放在最外层,以减少 CPU 跨切循环层的次数. 2. 如果循环体内存在逻辑判断,并且循环次数很大,宜将逻辑判断移到循环体的外面 ...
- vscode:配置git
1.下载git,并找到安装git的文件位置,并找到git文件夹下面的Bin文件夹 2.配置环境变量 位置:右击‘计算机’->属性->高级系统设置->环境变量 最后点击确定即可 ...
- C++使用BOOST操作文件、目录
开始使用 在BOOST库出现之前,C++对于文件和目录的操作,大都借助于UNIX提供的底层文件和目录接口,从使用角度来看,这些底层的操作不够友好.BOOST中filesystem库是一种可移植的文件系 ...
- Oracle练习详解
--1.查询emp表,显示薪水大于2000,且工作类别是MANAGER的雇员信息 select * from emp where sal > 2000and job = 'MANAGER'; - ...
- Hibernate关于父类子类的映射
怕忘记,把栗子贴上来 以Person类和Student类为例 public class Person { private Integer id; private String name; privat ...
- SQL rownum的用法
rownum只显示两行记录,第一行是字段名,第二行是满足查询条件的记录.
- cannot be resolved解决方法
引言: eclipse新导入的项目经常可以看到“XX cannot be resolved to a type”的报错信息.本文将做以简单总结. 正文: (1)jdk不匹配(或不存在) 项目指定的jd ...
- 编程三基:cpu:算法,总线(io):一切皆文件;内存:运行空间
编程三基:cpu:算法,总线:一切皆文件:内存:数据.运行空间 原文找不到了.
- HDU 6464 免费送气球 【权值线段树】(广东工业大学第十四届程序设计竞赛)
传送门:http://acm.hdu.edu.cn/showproblem.php?pid=6464 免费送气球 Time Limit: 2000/1000 MS (Java/Others) M ...