关于C语言拓扑排序的问题,哪位大侠帮帮忙啊,谢谢! 10

软件专业的学生要学习一系列课程,其中有些课程必须在其先修课程完成后才能学习,具体关系见下表:假设每门课程的学习时间为一学期,试为该专业的学生设计教学计划,使他们能在最短的... 软件专业的学生要学习一系列课程,其中有些课程必须在其先修课程完成后才能学习,具体关系见下表:

假设每门课程的学习时间为一学期,试为该专业的学生设计教学计划,使他们能在最短的时间内修完这些课程。
如何使用C语言实现,麻烦帮帮忙,急急急!
展开
 我来答
hufennihao
2012-10-09
知道答主
回答量:12
采纳率:0%
帮助的人:6.9万
展开全部
时间有点紧,就不能给你写代码了,不好意思,就说说思路吧。
存储结构就用最简单的数组吧,数组中有三个元素,编号,名称,先修课程。
我们假设把一系列的又关联性的课程炼成一串, 如;c1->c2->c3.这样的话,上述问题其实就转化成来这样的一个问题:
串起来之后哪个链表最长,以及怎么样安排课程才能让所有链表最短。因为假设每门课的时间时一样的。这样的话,我们打印出来信息一目了然,一个while循环,当他的先修不为空,输出他本身,他等于他的先修,循环下去。我们可以看见每一门课的链表。解决来第一个问题。更加知道了最基础的课程时那些。也就时没有先修课程的。
然后怎么样安排课程链表最短,这个需要知道每个学期最多安排的课程数。然后就时先修最基本的课程,然后逆着上面的链表开课。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式