遺伝的アルゴリズムと C プログラミング言語を勉強しています。私の仕事は、接続されたグラフを表す行列を読み取り、ノード間の距離に基づいて適合度を計算することです。教授は、これが正確である必要はなく、必ずしもグラフの制約に従う必要もないことを明らかにしました。だから私の考えは、マトリックスを機能する2D配列に読み込むことです。次に、その 2D 配列をラックと呼ぶ 1D 配列にする必要があります。次に、ラックをごちゃまぜにして、同じ長さの 2 つの小さな配列に分割します。
マトリックスは 20*20 であるため、ラックのサイズは 400 である必要があります。
とにかく、これはこれを行うための私のコードですが、機能しません。
void TwoDtoOneD(int array[][SIZE], int left[SIZE*SIZE]){
int i,j;
for(i=0;i<SIZE*SIZE;i++){
for(j=0;j<SIZE*SIZE;j++){
left[i] = array[i][j];
}//end for
}//end for
}