日期:2014-05-20  浏览次数:20609 次

java递归难题
image002.gif

数据表: node_id(子节点),job_id(子作业号),up_node_id(父节点),up_job_id(父作业号) 

找出node_id,job_id与up_node_id,up_job_id之间的所有路径。

数据如:
create table job(node_id varchar(20),job_id varchar(20), up_node_id varchar(20),up_job_id varchar(20))

insert into job values('CBRUN', 'CB_AGENT_TR_DLY', 'CBRUN','SS_CBRUN_START');
insert into job values('CBRUN', 'SS_CBRUN_START', 'CFRUN','SE_CFRUN_END')
insert into job values('CFRUN', 'SE_CFRUN_END', 'CFRUN','CF_IN_OUT')
insert into job values('CFRUN', 'CF_IN_OUT', 'CFRUN','SS_CFRUN_START')
insert into job values('CFRUN', 'SS_CFRUN_START', 'TRANF','SE_TRANF_END')
insert into job values('TRANF', 'SE_TRANF_END', 'TRANF','TF_CR_CK01_M')
insert into job values('TRANF', 'TF_CR_CK01_M', 'TRANF','SS_TRANF_START')
insert into job values('TRANF', 'SS_TRANF_START', 'TRANP','SE_TRANP_END')


如求尾节点:node_id = 'CBRUN' job_id ='SS_CBRUN_START' 到 头节点:up_node_id ='TRANP' up_job_id='SE_TRANP_END' 之间路径

我想用递归算法来取出 但是没有实现,急求答案。。。


------解决方案--------------------
没看懂逻辑,求尾节点:node_id = 'CBRUN ' job_id = 'SS_CBRUN_START ' 到 头节点:up_node_id = 'TRANP ' up_job_id= 'SE_TRANP_END ' 之间路径

路径是什么呀?
------解决方案--------------------
insert into job values( 'CBRUN ', 'CB_AGENT_TR_DLY ', 'CBRUN ', 'SS_CBRUN_START '); 
父子节点是一个????
------解决方案--------------------
tree(start)
{
if (start-->end)
print "start->end"
else 
{start=strat-->next
tree(start)
}
}