2D 配列が与えられた場合、重心を出力するアルゴリズムを考え出す必要があります。以下のアルゴリズムを思いつきましたが、配列サイズを 10 x 10 行列に増やすと、正しくない解が生成されます。Java を使用してアルゴリズムを作成し、実行しました。ここではコードを提供していませんが、アルゴリズムが正しくないと感じているため、アルゴリズムの説明のみを行います。しかし、私はその理由を見つけることができません。
Store into an array: Mean of each row
Store into an array: Mean of each column
The algo below is used for row and column:
Loop through the row array,
if(row = 1){
value = (mean of row 1) - (mean of row 2 + mean of row 3+ mean of row 4)
}else if(row =Length of array){
value = (mean of row 1 + mean of row 2 + mean of row 3) - (mean of row 4)}
else{
value = (mean of rows until ith row) - (ith row till end of array)
}
final value = lowest value;
行と列の平均を処理することになっていることを知っています。したがって、私のアルゴリズムでは、行と列の平均を見つけてから、上記の計算を実行します。同じアルゴリズムが列に適用されます。
ありとあらゆる助けをいただければ幸いです。重心についての私の理解が間違っているのかもしれません。不明な点がある場合は、質問してください。これは私の重心の理解から作成した独自のアルゴリズムですので、不明な場合は質問してください。ありがとうございました!