1

私は、私が抱えている問題を処理するある種のアルゴリズムを探していました。私が遭遇した最も近いものは、ビンパッキングアルゴリズムのものですが、私が探しているものは静かではないと思います.

このドキュメントは、私の問題と予想される出力をグラフィカルに表現したものです: http://www.scribd.com/doc/90871434/Rectangles

最も低い(高さの)長方形を見つけて、残りの長方形の幅に合う長方形を作成し、いくつかの再帰を使用して残りを把握する私の考え。

私が基本的にやろうとしているのは、水平に配置されたN個の長方形が与えられたときに、垂直に積み重ねられた長方形の最小量を見つけることです。

Javaでこれを行うと、入力長方形を含むHashMapがあります。

アイデア、コード、リンクはありますか? ありがとう

4

2 に答える 2

2

最小の長方形を見つけます。

それから最初の結果の長方形を作成します。

残りの長方形を決定します。

残りの長方形のすべての連続グループにアルゴリズムを適用します。

于 2012-04-23T20:54:06.637 に答える
1

分割統治法を使うべきだと思います。

最も低い長方形を見つけたら、データセットも分割します。次の長方形は、もっぱら左または右のセットにあります。そして、それは再帰的に機能します。

于 2012-04-24T00:22:28.327 に答える