public int getLD(String word1, String word2)
{
int row = word1.length()+1; //行的长度
int col = word2.length()+1; //列的长度
matrix = new int[row][col]; //构造矩阵 //矩阵的初始化:初始化第一行和第一列
for (int i = 0; i < row ; i++)
{
matrix[i][0] = i;
}
for (int j = 0; j < col; j++)
{
matrix[0][j] = j;
} //打印初始矩阵
System.out.print("初始化的矩阵是:");
for (int[] m1 : matrix)
{
for (int m2 : m1)
{
System.out.print(m2);
}
System.out.print("");
} for(int i=1;i < row ;i++)
{
for(int j = 1; j < col; j++)
{
int max;
int K = (word1.charAt(i-1) == word2.charAt(j-1)) ? 0 : 1;
max = matrix[i - 1][j - 1] + K;
matrix[i][j] = Math.min(Math.min(matrix[i][j - 1]+1, matrix[i - 1][j]+1), max);
}
LD = matrix[row-1][col-1]; } //打印赋值之后的矩阵
System.out.print("完成之后的矩阵是:");
for (int[] m1 : matrix) {
for (int m2 : m1)
{
System.out.print(m2);
}
System.out.print("");
} return LD;
}