Инициализируйте два двумерных массива и заполните первую строку и первый столбец массива C нулями. - PullRequest
0 голосов
/ 14 ноября 2018

Эта функция инициализирует массивы C [m + 1] [n + 1] и B [m] [n] и заполняет первую строку и первый столбец C нулями. Примечание: int *** C относится к указателю, указывающему на двумерный целочисленный массив пример: https://i.stack.imgur.com/ElWMY.png

void initLCSTable(int*** C, char*** B, int m, int n)
{

}

void printLengthTable(int** C, int m, int n);
void printArrowTable(char** B, int m, int n);

int main() {
std::string strX;
std::string strY;

cout << "String #1: ";
cin >> strX;
cout << "String #2: ";
cin >> strY;

int m = strX.length();
    int n = strY.length();
    //declare two dynamic 2-Dimensional array of variable length
    //C is (m+1)X(n+1) and B is m X n
    int** C;
    char** B;

    initLCSTable(&C, &B, m, n);
    fillLCSTable(strX, strY, C, B);

    cout << "\nThe LCS is: " << findLCS(strX, B, m, n) << endl;
    cout << "Length = " << C[m][n] << endl;

    cout << "\nTable C" << endl;
    printLengthTable(C, m, n);

    cout << "\nTable B" << endl;
    printArrowTable(B, m, n);

    freeLCSTable(C, B, m);
    return 0;
}
...