我刚刚开始用Java教授数据结构和算法.到目前为止,我在生活中只学过C++,所以我对使用java仍然很新.
无论如何我有一个功课问题我有点困惑:
写一个递归方法,返回N的二进制表示中的1的数量.如果N是奇数,则使用这个等于N/2 + 1表示中1的数量的事实.
现在我不确定如何做到这一点.我已经有一个函数设置,它接受一个整数并将其转换为二进制并将其存储在一个字符串中,但其余的我有点迷失.
如果我能得到一些指导,那真的会有所帮助.
这是我到目前为止:
import java.io.*;
public class Homework1Code {
static void prtbinary(String Molly, int size){
if(size <=0){
return;
}
}
public static void main(String[] args) {
int i = 38;
String binstr = Integer.toBinaryString(i);
System.out.println("The Original Decimal Number is: " + binstr);
prtbinary(binstr, binstr.length());
}
}
Run Code Online (Sandbox Code Playgroud)
谢谢