算法(第四版)
注:编码都是在一个项目中完成的,每一道题都是一个新类中的函数,最后全部放在了一个主函数中,主函数在本文的在最后。
1.1.9 编写一段代码,将一个正整数N用二进制表示并转化为一个String类型的值s。
编码:
public class Text1_1_9 {
String decimalToBinary(int number) //十进制转化二进制
{
String binarySystem=""; //定义一个字符串并令其为空
while(true)
{
int remainder=number%2==0?0:1; //判断余数为0还是1,如果可以整除就为0,不能整除就为1.
binarySystem=remainder+binarySystem; //令余数加上字符串
number/=2;
if(number==0) //如果十进制数为0便退出
break;
}
return binarySystem;
}
}
1.1.10 下面这段代码有什么问题?
int[] a;
for(int i =0;i<10;i++)
a[i]=i*i;
java中定义数组的方法一共有三种:
int[] a=new int[10]; //用new的方法定义
int[] a={1,2,3,6}; //直接初始化
int[] a=new int[]{1,2,3,4,5,6,7,22}; //new之后初始化在一个语句中完成