利用棧實現車廂重排

2021-08-16 07:08:28 字數 658 閱讀 2634

入軌道上的車廂為無序的,出軌道車廂為從右向左遞增排序,使的在對應經過車站時可以直接解除安裝下尾部車廂而不用調整其他車廂。

緩衝軌道上存入軌道上進來但還不能進入出軌道的車廂,每乙個緩衝軌道中從頂部到底部資料遞增,如果乙個資料進入緩衝軌道,如果所有緩衝軌道頂部的資料都大於這個資料,那麼其進入這些資料中最小的對應的緩衝軌道

//全域性變數

arraystack*track;//緩衝軌道陣列

int numberofcars;//車廂的數量

int numberoftracks;//緩衝軌道數

int smallestcar;//緩衝軌道中編號最小的車廂

int itstrack;//編號最小的車廂對應的軌道號

bool railroad(int inputorder,int thenumberofcars,int thenumberoftracks )

}else

if(!putinholdingtrack(inputorder[i]))//把車廂移入乙個緩衝軌道函式

return false;

return true;

}

用佇列實現列車車廂重排

之前寫了用棧實現的列車車廂重排問題,現在來實現用佇列的列車車廂重排問題,用佇列要比用棧簡單。void outputfromholdingtrack bool putinholdingtrack int c else if besttrack 0 besttrack i if besttrack 0 ...

利用佇列實現車廂編組

利用佇列實現車廂編組問題。假設佇列元素是char型別,h 表示硬座,s 表示軟臥,佇列a表示一組硬座和臥鋪混編的車廂。要求把佇列a中的硬座車廂移動到佇列b,佇列a中的臥鋪車廂移動到佇列c,同時保留原有硬座車廂之間和軟臥車廂之間的先後順序不變。如hshhshsshh,分別輸出軟臥車組 ssss和硬座車...

車廂排程問題 佇列和棧的實現

根據佇列和棧的性質 佇列找尾部最大的車廂號 棧找尾部最小的車廂號 棧 佇列 陣列可用stl或者自己實現 pragma once include vector.h include queue.h include stack.h include const char inputvectorfilenam...