给定一字符串,该字符串中存在若干对相同的字符,设计一个在时间和空间上尽可能高效的算法,找出一对相同字符在该字符串中的最大距离。例如:“KLabcLdecL”,其中第一个“L”和最后一个“L”相距最远,它们在原字符串中的位置相差8,要求: 说明你所设计算法

admin2017-04-28  37

问题 给定一字符串,该字符串中存在若干对相同的字符,设计一个在时间和空间上尽可能高效的算法,找出一对相同字符在该字符串中的最大距离。例如:“KLabcLdecL”,其中第一个“L”和最后一个“L”相距最远,它们在原字符串中的位置相差8,要求:
说明你所设计算法的时间复杂度和空间复杂度。

选项

答案时间复杂度分析:整个算法过程相当于把数组遍历了一遍,所以时间复杂度为O(n)。 空间复杂度分析:算法中最多只需要使用128个数组元素,所以空间复杂度为一常数,表示为O(1)。

解析
转载请注明原文地址:https://kaotiyun.com/show/AXRi777K
0

最新回复(0)