-1

如何打印两个字符串之间的差异。例如,如果给出“abcde”和“xabcde”,它应该在开头说“x”。当然,不同的部分可以在任何地方。有没有一个标准的算法呢?

4

1 回答 1

3

我不知道这是否有任何标准算法,但可以肯定的是我们可以轻松地制作一个。

创建一个包含 26 个元素的整数数组,并在开始时将它们全部声明为零。

int arr[26] = {0};

arr[0]代表a的arr[1]数量,代表b的数量......等等。

遍历 string1 并增加相应字母的相应数组索引。

遍历 string2 并为相应的字母递减相应的数组索引。

现在遍历您的数组并在数组的每个索引处获取绝对值

例如:如果arr[0] = 1,则将其视为1; 如果arr[1] = -2,则将其视为2; 如果arr[2] = 0, 取它为0& 以此类推。

多次打印出相应的字母,例如。我们刚刚拍摄,您将必须打印 'a' 1 次,'b' 2 次,'c' 0 次等等。

于 2013-05-26T05:54:30.467 回答