算法弱笔求教一个带优先级的活动安排问题

LonelyCoder2012 2013-09-21 12:42:01
最近做项目,需要安排一系列的任务。数据库里面一张任务关系表,字段包括任务ID、该任务的前置任务ID。
新增任务时根据任务关系表的数据查询是否会造成前后置任务成环,即A任务的前置任务是B,B任务的前置任务是C,C任务的前置任务是A。会则输出true,否则false
这要怎么写算法啊。。。
...全文
109 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
lpcads 2013-09-22
  • 打赏
  • 举报
回复
链表中每个节点中添加一个bool值,初始化为false。遍历链表的每个节点,检查bool值是否为false,如果为true则说明成环;如果为false,则更新为true,再检查下一个节点
FancyMouse 2013-09-22
  • 打赏
  • 举报
回复
引用 5 楼 LonelyCoder2012 的回复:
[quote=引用 4 楼 FancyMouse 的回复:] 不就是拓扑排序么……
拓扑排序的前提不就是有向无环么。。。现在还不知道有没有环呢。。。[/quote] 拓扑排序的算法过程中就能检测是否有环。能排出来就是无环。排不出来就是有环。
LonelyCoder2012 2013-09-21
  • 打赏
  • 举报
回复
引用 1 楼 derekrose 的回复:
完全看不出需求里面有优先级的意思,貌似就是链表判断是否有环? google “c++ 链表 还” 可破
可是链表一个节点的前序结点只有一个,任务列表里有可能几个任务的前置任务是同一个前置任务啊。。。这要怎么体现?
LonelyCoder2012 2013-09-21
  • 打赏
  • 举报
回复
引用 1 楼 derekrose 的回复:
完全看不出需求里面有优先级的意思,貌似就是链表判断是否有环? google “c++ 链表 还” 可破
都说了我是算法弱了。。。。各种混乱
derekrose 2013-09-21
  • 打赏
  • 举报
回复
完全看不出需求里面有优先级的意思,貌似就是链表判断是否有环? google “c++ 链表 还” 可破
LonelyCoder2012 2013-09-21
  • 打赏
  • 举报
回复
引用 4 楼 FancyMouse 的回复:
不就是拓扑排序么……
拓扑排序的前提不就是有向无环么。。。现在还不知道有没有环呢。。。
FancyMouse 2013-09-21
  • 打赏
  • 举报
回复
不就是拓扑排序么……

65,195

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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