讓我們假設我們有以下的二維數組:給出一個二維數組,發現地區它
2 1 2 2 1 1
2 2 1 2 1 1
2 1 3 2 1 1
2 2 2 1 3 3
2 2 1 1 3 3
2 2 1 1 3 3
現在,我想找到在上面連續的區域。如果兩個位置之間存在路徑,並且它們的值相同,則它們屬於連續區域。而且,路徑中的所有節點也應具有相同的值。例如,我們可以將上述分爲以下5個區域:
A B A A D D
A A B A D D
A B C A D D
A A A D E E
A A D D E E
A A D D E E
您被允許進入所有8個方向。我正在尋找Java中的實現。有人可以幫助我這個。該接口是一樣的東西
VectorFeature returnComp(int matrix[][])
其中VectorFeature可以如下
class VectorFeature{
string region
int numberForRegion
int numOfElements
}
我知道如何實現這個想法,但我希望在JAVA快速/無缺陷執行!
這應該有助於 http://stackoverflow.com/questions/1257117/does-anyone-have-a-working-non-recursive-floodfill-algorithm-written-in-c – innochenti 2012-02-19 16:56:58
@innochenti:我要找對於Java中的某些東西,而不是C – Programmer 2012-02-19 16:58:03
@innochenti:此外,floodfill只允許在4個方向上進行。對我來說8 – Programmer 2012-02-19 17:00:09