请数据算法的大虾帮帮忙,小弟感激不尽

hansonboy 2001-09-12 11:01:49
我的数据库有两个字希parent和child,两个字段的内容如下:
parent child
001 002
002 003
002 004
003 005
004 006
005 020
005 021
005 030
006 009
我是要这样做:
例如根据001可以查找到002,再由002查到003和004,再由003和
004查找下一级,先由003查找到005,由005查到020,021,030(因为020,021‘
030都没有下一级,所以这一循环到址结束),再返回005的上一级(即003),
003的父字段只有一条纪录, 所以再返加上一级(即002),002的父字段有两条
纪录(003已做)现在做下一条(即004),由004找到006,由006找到009,009
没有下一级了, 所以到此全部结束,
我表达不是很清楚, 希望能够看明
...全文
114 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
starfish 2001-09-13
  • 打赏
  • 举报
回复
基本上就是楼上说得那样
ritchiex 2001-09-13
  • 打赏
  • 举报
回复
这是深度优先搜索,很容易编的:
我给你一个模型:
int visit[]; /开始对所有的结点置标志为0

void dfs(int s)
{int i;
visit[s]=1;
i=child[s];
while(i!=NULL)
{if(visit[i]==0) dfs(i);
再次搜索i的结点;
}
}


hansonboy 2001-09-13
  • 打赏
  • 举报
回复
就是不知怎样做, 我要先输入一个数, 再根据这个数来查找, 能否级个源码我看看吗
starfish 2001-09-13
  • 打赏
  • 举报
回复
递归搜索就可以了

33,008

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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