特定の条件に基づいてビンパッキングを行うアルゴリズムがあります。読者が理解するには、アルゴリズムのフローが少し複雑であることがわかりました。
以下に、開発されたJavaコードを示します。このコードのはるかに単純化された代替フローはありますか?
void binpack() {
boolean set=false, cmap=false;
while(set==false) {
set=true;
cmap=false;
pack[k.cnt]=new bins(k.lim, k.ptim);
for(int i=0;i<tot;i++) {
int s1,s2;
if(jm[i][1]==0) {
s1=jm[i][0];
set=false;
else if(pack[k.cnt].pushk<k.lim) {
for(int j=0;j<pack[k.cnt].pushk;j++) {
s2=pack[k.cnt].binjm[j][0];
for (Iterator<Integer> g= list[s1].iterator(); g.hasNext();) {
}
}
ノート:
ptim->現在の時刻
etim->終了時間
lim->制限