用于使所有字符串相等的最小移动到结束操作的 Javascript 程序
给定 n 个相互排列的字符串。我们需要通过一个将任何字符串的前面字符移到末尾的操作来使所有字符串相同。
例子:
Input : n = 2
arr[] = {"molzv", "lzvmo"}
Output : 2
Explanation: In first string, we remove
first element("m") from first string and
append it end. Then we move second character
of first string and move it to end. So after
2 operations, both strings become same.
Input : n = 3
arr[] = {"kc", "kc", "kc"}
Output : 0
Explanation: already all strings are equal.
移动到结束操作基本上是左旋转。我们使用检查字符串是否相互旋转中讨论的方法来计算使两个字符串相同所需的移到前面操作的次数。我们一一考虑每个字符串作为目标字符串。我们计算使所有其他字符串与当前目标相同所需的旋转,并最终返回所有计数中的最小值。
下面是上述方法的实现。
Javascript
输出:
5
有关更多详细信息,请参阅有关使所有字符串相等的最小移动到结束操作的完整文章!