请问初始化有什么必要性吗?
查看原帖
请问初始化有什么必要性吗?
753009
I_am_sb___楼主2023/3/15 10:27

如何解释代码第十六到二十三行的初始化的必要性?

#include <bits/stdc++.h>

using namespace std;

const int N = 2007;

int n , m;
char a[N] , b[N];
int f[N][N];

int main(){
    scanf("%s" , a + 1);
    scanf("%s" , b + 1);
    n = strlen(a + 1) , m = strlen(b + 1);
    
    for(int i = 0 ; i <= m ; i ++)
    {
        f[0][i] = i;
    }
    for(int i = 0 ; i <= n ; i ++)
    {
        f[i][0] = i;
    }

    for(int i = 1 ; i <= n ; i ++)
        for(int j = 1 ; j <= m ; j ++)
        {
            f[i][j] = min(f[i - 1][j] + 1 , f[i][j - 1] + 1);
            if(a[i] == b[j])
            {
                f[i][j] = min(f[i][j] , f[i - 1][j - 1]);
            }
            else
            {
                f[i][j] = min(f[i][j] , f[i - 1][j - 1] + 1);
            }
        }
    cout << f[n][m] << "\n";    
    return 0;
}
2023/3/15 10:27
加载中...