主题:急需救命(全是简单问题,第一个回复正确答案加分)
风花雪月☆雨
[专家分:460] 发布于 2005-10-10 23:33:00
1。十进制小数怎么转化为二进制小数?例如0.456(要过程)
2。完全二差数的节点个数为n*4+3,叶子节点个数为多少?
3。完全二差数的节点个数为n,叶子节点个数为多少?
谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢 谢谢
回复列表 (共6个回复)
沙发
风花雪月☆雨 [专家分:460] 发布于 2005-10-11 12:49:00
没人回答吗?
板凳
KID [专家分:820] 发布于 2005-10-11 13:26:00
10进制转2进制的问题:
整数的转化就是用除2法 比如3 3/2=1余1 1/2=0余1 而3的二进制就是11
小数就是用乘2 例如0.2575 0.2575*2=0.515(没有超过1,继续算)
0.515*2=1.03(超过1,把1减掉继续算)
0.03*2………………
由于得出的数字有时是无限循环的,不继续算了,0.2575的二进制为0.010……(在第2次乘2时减掉的一个1要放在小数点后第2位)
3 楼
KID [专家分:820] 发布于 2005-10-11 13:32:00
问题2:(楼主所说的二差数是不是二叉树?)
n*4+3-(n*4+3)div 2
问题3:
跟问题2一样结点个数为n - n div 2
4 楼
boxertony [专家分:23030] 发布于 2005-10-11 13:40:00
1。
(1)如果为0,结束,否则转(2)
(2)乘以2
(3)结果如果小于1,则得到一个0,如0.456*2=0.912<0,得到第一个0,转(2);大于等于1,则得到1,并把结果减去1。转(1)
以0.456为例,如下:
0.456*2 = 0.912 ---0
0.912*2 = 1.824 - 1 = 0.824 ---1
0.824*2 = 1.648 - 1 = 0.648 ---1
0.648*2 = 1.296 - 1 = 0.296 ---1
0.296*2 = 0.592 --- 0
0.592*2 = 1.184 - 1 = 0.184 ---1
0.184*2 = 0.368 --- 0
0.368*2 = 0.736 --- 0
0.736*2 = 1.472 - 1 = 0.472 ---1
所以0.456 ≈ (0.011101001)
2。2n+2
3。(n+1)/2
5 楼
风花雪月☆雨 [专家分:460] 发布于 2005-10-11 19:31:00
谢谢大家,太感谢了!
6 楼
KID [专家分:820] 发布于 2005-10-11 19:45:00
呵呵, 不客气
我来回复