如何打印两个字符串之间的差异。例如。如果给出“abcde”和“xabcde”,它应该在开头说“x”。当然,不同的部分可以在任何地方。有没有标准的算法呢?
答案 0 :(得分:2)
我不知道是否有任何标准算法,但我们确定可以轻松制作一个。
创建一个包含26个元素的整数数组,并在开始时将它们全部声明为零。
int arr[26] = {0};
让arr[0]
代表a的数量,arr[1]
代表b的数量....&等等。
遍历string1并为各个字母递增相应的数组索引。
遍历string2并减少各个字母的相应数组索引。
现在遍历您的数组并获取数组
的每个索引处的绝对值例如:if arr[0] = 1
,将其视为1
;如果arr[1] = -2
,请将其视为2
;如果arr[2] = 0
,则将其视为0
&等等。
多次打印出相应的字母,例如。我们刚才采取的,你必须打印'a'一次,'b'打2次,'c'0次&等等。