資源簡介
要求根據課程及先行課網絡圖,輸出課表。其實就是先根據用戶的輸入來構造AOV網絡圖,并由此進行拓撲排序,最后輸出課表。即:
功能一:
輸入:課程及其先行課網絡圖
輸出:一個課表
功能二(拓展功能):
輸入:課程及其先行課網絡圖
輸出:所有可能的課表
由于拓撲排序并不是唯一的,所以要求能夠輸出所有的拓撲排序,即為所有可能的課表。

代碼片段和文件信息
//運用拓撲序列排課表
#include?
#include?“awd.h“
void?Welcome()
{
cout< ????cout<<“**************************??????????????????????**********************“< cout< cout<<“??????????????????????????歡迎您使用排課表系統???????????????????????“< cout< cout<<“??????????????軟件版本?2007-9-3?????????????注冊日期??2008-3-1“< cout< cout<<“**************************??????????????????????***********************“< cout< }?
//main主方法
void?main(void)
{
Welcome();
cout<<“請輸入課程數:?“< int?n;
cin>>n;
cout<<“現在請逐個輸入課程:“< char?**?name;
name=new?char?*[n+2];
for(int?i1=0;i1<=n+1;i1++)
name[i1]=new?char?[50];
cin.getline(name[1]49‘\n‘);
for(int?i2=1;i2<=n;i2++)
{
cout<<“第“< cin.getline(name[i2]49‘\n‘);
}
???AdjacencyWDigraph?G(n+1);
???
???cout<<“首先輸入課程關系數,即圖中邊數“< ???int?e;
???cin>>e;
???cout<<“現在請您輸入課程網絡圖:請按照“< ???cout<<“先行課?后續課??的模式輸入課程網絡圖“< ???cout<<“為方便您的輸入這里用一些數字來簡單的代表您所輸入的課程,即:“< ???for(int?j=1;j<=n;j++)
???{
???cout< ???}
???//
???cout<<“現在開始輸入第一條邊:“< ???for(int?i=1;i<=e-1;i++)
???{
???int?firstthen;
???cin>>first>>then;
???G.Add(firstthen1);
???cout<<“請輸入下一條相關邊:“< ???}
???int?firstthen;
???cin>>first>>then;
???G.Add(firstthen1);
???cout<<“現在請您選擇拓撲排序模式,即模式1(輸入1)?:只輸出一個拓撲排序?模式2(輸入2):輸出所有拓撲排序“< ???int?model;
???cin>>model;
???while(model!=1&&model!=2)
???{
???cout<<“對不起您的輸入有誤,請重新輸入“< ???cin>>model;
???}
???if(model==1)
???{
???int?v[11];
???G.Topological(v);
???for(int?i=1;i<=n;i++)
???cout< ???cout< ???cout<<“如果您還想再得出所有拓撲序列,請輸入1,如果直接退出那么輸入0“< ???int?model2;
???cin>>model2;
???if(model2==1)
???{G.Set(name?n);
???G.Alltp(1);
???}
???}
???else
???{
???G.Set(name?n);G.Alltp(1);
???}
???for(int?c=0;c<=n+1;c++)
???delete?name[c];
???delete?[]?name;name=0;
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????3273??2009-02-24?15:03??test4\chain.h
?????文件????????545??2009-02-24?15:03??test4\citer.h
?????文件????????437??2009-02-24?15:03??test4\cnode.h
?????文件???????5258??1997-09-07?09:31??test4\fchain.h
?????文件???????1939??2009-02-26?15:08??test4\lqueue.h
?????文件???????1438??1997-09-21?15:50??test4\lstack.h
?????文件???????3237??1998-02-06?13:02??test4\minheap.h
?????文件???????3556??2009-02-24?16:03??test4\network.h
?????文件????????290??2009-02-24?15:03??test4\node.h
?????文件??????91136??2009-07-06?22:42??test4\short.ncb
?????文件????????742??2009-03-01?21:39??test4\short.plg
?????文件????????141??2009-02-24?15:03??test4\swap.h
?????文件???????1083??1997-12-26?13:00??test4\xcept.h
?????文件????????295??2009-02-24?22:30??test4\wnetwork.h
?????文件????????290??2009-02-28?19:27??test4\del2d.h
?????文件????????311??2009-02-28?19:27??test4\make2db.h
?????文件???????7756??2009-03-01?20:02??test4\awd.h
?????文件???????2215??2009-03-01?20:59??test4\short.cpp
?????文件???????3389??2009-03-01?21:39??test4\paike.dsp
?????文件??????33792??2009-03-01?21:39??test4\paike.ncb
?????文件????????698??2009-03-01?21:39??test4\paike.plg
?????文件??????48640??2009-03-01?21:39??test4\paike.opt
?????文件????????518??2009-03-01?21:39??test4\paike.dsw
?????文件???????3389??2009-03-01?21:39??test4\short.dsp
?????文件????????518??2009-03-01?21:39??test4\short.dsw
?????文件??????69632??2009-03-01?21:39??test4\Debug\vc60.pdb
?????文件?????229474??2009-03-01?21:19??test4\Debug\short.exe
?????文件?????607232??2009-03-01?20:59??test4\Debug\short.pdb
?????文件??????59415??2009-03-01?21:39??test4\Debug\short.obj
?????文件??????58983??2009-03-01?21:39??test4\Debug\paike.obj
............此處省略6個文件信息
評論
共有 條評論