すべて同じクラス (DistributedApps) のオブジェクトの束を含む Arraylist があります。
コンストラクタ:
public Distributedapps(string appName, string devName, string description, double size, int estLife,double price, int downloads,int ratings,string distributor, double annLicenceFee, int maxUsers)
:base(appName,devName,description,size,estLife,price,downloads,ratings)
Insertionsort で、このリスト (DeployedApps) をアプリのサイズ (サイズ) で降順に並べ替えます。
public void DeployInsertionSortAppSizeDeployed()
{
Console.WriteLine("INSERTION SORT ON APP SIZE DEPLOYED!");
int II;
Distributedapps Temp, PrTemp;
for (int IO = 1; IO <= (Count(DeployedApps) - 1); IO++)
{
Temp = (Distributedapps)DeployedApps[IO];
II = IO;
PrTemp = (Distributedapps)DeployedApps[II - 1];
while ((II > 0) && (PrTemp.GetSize().CompareTo(Temp.GetSize()) <= 0))
{
DeployedApps[II] = DeployedApps[II - 1];
II -=1;
}
DeployedApps[II] = Temp;
}
Console.WriteLine("DONE!");
}
並べ替えコードに問題がなく、バグがない場合は、前後のリストの写真を投稿してみます。