两个面试题。求高人解答

j_coffees 2012-08-27 04:25:06
1. 设计数据库时,n维,如何设计。

例如[省份][城市][网吧],这是三维关系,它的表也应该有三个,网吧有外键引用城市,城市有外键应用省份,这个规律就是下层的要有一外键去引用上层。



2. 输入某个unsigned int,判断其二进制形式中有多少个1

例如:5有2个1,因为5的二进制形式是101;7有3个1,因为7的二进制是111

没有思路。求高人贴答案。谢谢。
...全文
134 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
j_coffees 2012-08-27
  • 打赏
  • 举报
回复
多谢回答的哥们们、、
狗阳 2012-08-27
  • 打赏
  • 举报
回复
题目太简单,回答了丢人。
iGoodLoser 2012-08-27
  • 打赏
  • 举报
回复
2、

public static int bitscount(int x){
int count = 0;
for(; x != 0; x >>= 1){
if((x & 0x1) != 0)
count++;
}
return count;
}

试试!!
xiejiangmi 2012-08-27
  • 打赏
  • 举报
回复
回答第一题吧:
如果一张表;写出表结构
id 父节点 name
1 0 湖南
2 1 长沙
3 1 邵阳
4 2 芙蓉区
5 3 邵阳县
……下面以此类推;根节点默认为0;子节点的父节点为节点id.
多张表也就是外键关联而已
j_coffees 2012-08-27
  • 打赏
  • 举报
回复
第二题:
class Test{
**
* 方法1 取余法 O(log2v)
* @param value
*/
public static int MethodA1Num(int value){
int num=0;
while(value!=0){
int a = value%2;
int b = value/2;
if(a==1)
num++;
value = b;
}
return num;
}

public static void main(String[] args){
int sum = Test.MethodA1Num(5);
System.out.println(sum);
}
}
libei_march 2012-08-27
  • 打赏
  • 举报
回复

public static void main(String[] args) {
int num = 7;
//new Demo9().getWeek();
String str=Integer.toBinaryString(num);
System.out.println("数num的二进制为:"+str);
int sum = 0;
for (int i = 0; i < str.length(); i++) {
System.out.println((int)(str.charAt(i)));
if(49 ==(int)(str.charAt(i)))
sum++;
}
System.out.println("数num的包含1的个数为:"+sum);
}
cfm2000 2012-08-27
  • 打赏
  • 举报
回复
题目太简单,回答了丢人。
j_coffees 2012-08-27
  • 打赏
  • 举报
回复
顶上去、、求大拿解答
j_coffees 2012-08-27
  • 打赏
  • 举报
回复
顶上去、、、、、来大拿解答啊

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧