【初心者】Java の宿題ここで答えます 5.0【歓迎】
■ このスレッドは過去ログ倉庫に格納されています
0565>>562 その3
05/03/01 04:10:58Data dat = (Data) queue.removeFirst();
if (dat.x == str2.length() - 1 && dat.y == str1.length() - 1) {
costSet.add(new Integer(dat.cost));
continue;
}
pt.setLocation(dat.x + 1, dat.y + 1);
if (list.contains(pt)) {
queue.addLast(new Data(dat.x + 1, dat.y + 1, dat.cost));
continue;
} else {
if (dat.x + 1 < str2.length())
queue.addLast(new Data(dat.x + 1, dat.y, ++dat.cost));
if (dat.y + 1 < str1.length())
queue.addLast(new Data(dat.x, dat.y + 1, ++dat.cost));
}
}
int mincost = ((Integer) costSet.first()).intValue();
System.out.println("二つの文字列の最小編集コスト:" + mincost);
}
}
■ このスレッドは過去ログ倉庫に格納されています