Я работаю над макс. Двухсторонним алгоритмом сопоставления. Мне трудно понять, как устанавливать значения в массиве на основе ключа/значения на карте.Копирование значений из карты в массив 256x256 в программе на C++
В конечном счете, мне нужна итерация по моим строкам, которые соответствуют моим ключам на карте mymap. И тогда мне нужно установить соответствующий столбец в true (1) на основе значения в mymap. В конце концов, это будет выглядеть примерно так
bool bpGraph[V][V] = { {0, 0, 0, 1, 0, ect.... 0}, //Key 1 Value 4
{0, 2, 0, 0, 0, ect.... 0}, // Key 2 Value 2
{0, 0},
{0, 0},
{0, 0},
{0, 0},
{0, 0}
};
В настоящее время мой algorithim выглядит так, вы можете увидеть, что я озадачен о том, как перебирать карты, чтобы установить соответствующее значение в массиве:
рядный ничтожной keep_window_open() {char ch; CIN >> ч;} // Драйвер программа для тестирования выше функций
int main()
{
ifstream myfile("H:\\School\\CSC-718\\paths.txt");
std::map<int, int> mymap; // Create the map
pair<int,int> me; // Define the pair
char commas; // Address the comma in the file
int a, b;
vector<int> v;
while (myfile >> a >> commas >> b)
{
mymap[a] = b; // Transfer ints to the map
}
mymap;
// Этот код выше работает
bool bpGraph[M][N]; // Define my graph array
for (int i = 0; i <mymap.count; i++) // the plan is to iterate through the keys M
and set the appropriate value true on N
{
bool bpGraph[M][N] = {
};
}
cout << "Maximum number networks "
<< maxBPM(bpGraph); // run it through the BPM algorithim
keep_window_open();
return 0;
}
Удивительный, работал хорошо, спасибо – Phi