二叉数的递归问题,希望大家帮忙给予解答!(泪求):( 走过,路过不要错过,帮帮忙!谢谢各位了!

yuyangwxj 2006-07-18 07:51:50
二叉数是一个点下面有左右两个点,
第一层一个点,
第二层两个点,每个点下面还有两个点
依次类推!



有个固定点数是 5
例如:
第二层左6,右为9,则取最小的,是6,以2为除数 6除以2等于3
则给第一层的3乘以固定点数5得15,则给第一层15点!如果第二层的左右缺少任意一个,则不计算,即不给第一层点数!
依次类推,计算每个节点所得的点数!
左8,右3 取最小的3,以2为除数 3除以2等于1,则给上一层1*固定点数5,即5点!
用算法实现,该怎么做???ASP实现!递归弄的不大明白呀
...全文
349 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
leohuang 2006-07-30
  • 打赏
  • 举报
回复
学习
yuyangwxj 2006-07-30
  • 打赏
  • 举报
回复
SORRY!有事情走开一段时间,今天刚回来!把分散了吧!
coder0621 2006-07-19
  • 打赏
  • 举报
回复
liuxiaoyi666:
我到!c#可以用引用吗!真晕!算法描述实现了再不会改,那我建议他别作程序员了!
小粘人 2006-07-19
  • 打赏
  • 举报
回复
java可以用引用代替指针做~
  • 打赏
  • 举报
回复
倒,c#不要用指针的.....而且还不清楚lz要的是vbs还是c#
coder0621 2006-07-19
  • 打赏
  • 举报
回复
我用c语言写的,c和c#差不多,你仿照着改一改就可以用了!
我没调试,应该没能实现你要的功能!
struct mytree
{
struct tree *left,*right;
int data;
}


int f(mytree tree)
{
//二叉树的左右分支全为空,返回此节点的数值(注意,这一句和下边的if的位置绝对不可调换)
if (tree.right==null)&&(tree.left==null)
return tree.data;

//二叉树的左右分支有一个是空,返回0(也就是你说得不给它点数)
if (tree.right==null)||(tree.left==null)
return 0;

//二叉树左右分支都不为空,开始递归
left=f(*tree.left);
right=f(*tree.right);

if left>right
{
tree.data=right/2*5;
return tree.data;
}
else
{
tree.data=left/2*5;
return tree.data;
}


}
coder0621 2006-07-19
  • 打赏
  • 举报
回复
我也找他!
超级大笨狼 2006-07-19
  • 打赏
  • 举报
回复
VBS模拟的,可以看出:中序便历就是排序

<SCRIPT LANGUAGE="vbScript">
class node
public data
public Lnode
public Rnode
sub insert(newData)

if newData<data then
if IsEmpty(Lnode) then
set Lnode=new node
Lnode.data = newData
else
Lnode.insert newData
end if
else
if IsEmpty(Rnode) then
set Rnode=new node
Rnode.data = newData
else
Rnode.insert newData
end if
end if
end sub
end class

class tree
public root

sub insertNode(newData)
if IsEmpty(root) then
set root=new node
root.data=newData
else
root.insert newData
end if
end sub

sub preOrderTraversal'前序便历
preOrder root
document.write "<br/>"
end sub
sub inOrderTraversal '中序便历
inOrder root
document.write "<br/>"
end sub
sub postOrderTraversal'后序便历
postOrder root
document.write "<br/>"
end sub

Private sub preOrder(N)
if IsEmpty(N) then exit sub
document.write " " & N.data
preOrder N.Lnode
preOrder N.Rnode
end sub
Private sub inOrder(N)
if IsEmpty(N) then exit sub
inOrder N.Lnode
document.write " " & N.data
inOrder N.Rnode
end sub
Private sub postOrder(N)
if IsEmpty(N) then exit sub
postOrder N.Lnode
postOrder N.Rnode
document.write " " & N.data
end sub
end class
'调用示例

set T=new tree

document.write "插入节点"
arr=array(39,69,94,47,50,72,55,41,97,73)
for i=0 to 9
document.write " " & arr(i)
T.insertNode arr(i)
next
document.write "<br/>"
document.write "前序便历"
T.preOrderTraversal
document.write "中序便历"
T.inOrderTraversal
document.write "后序便历"
T.postOrderTraversal
</SCRIPT>
邦迪代驾 2006-07-19
  • 打赏
  • 举报
回复
楼主跑哪去了
超级大笨狼 2006-07-19
  • 打赏
  • 举报
回复
左8,右3 这个不是二叉树吧?楼主的需求有点怪异。
二叉树都是左边比右边小。
超级大笨狼 2006-07-19
  • 打赏
  • 举报
回复
C#的代码可以吗?我做了一个。整理下再挂到网上。
BlueDestiny 2006-07-18
  • 打赏
  • 举报
回复
你的数据结构也要给出来吧?兄弟链表?你的基本代码?

数据结构组织清晰了写出来也不是很难的
yuyangwxj 2006-07-18
  • 打赏
  • 举报
回复
没人来解答了??
郁闷呀!
在线等
  • 打赏
  • 举报
回复
二叉树我用dic模拟过
yuyangwxj 2006-07-18
  • 打赏
  • 举报
回复
没人回答呀?
哭了,眼泪哗哗的!

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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