思路:本题就是让我们判断整数N在八进制下是否回文。那么我们就可以手搓两个函数。一个是进制转化的,另一个是判断回文串(数)的。先进行进制转换,之后存入字符串中判断即可。
代码(1):
方法二:什么,你说题目上写了双指针?我就不用 那我用一下。其实就是在判断回文串的时候改一改代码就行了
代码(双指针):
其实就是把for改成while
时间复杂度分析:
进制转换的复杂度为O(LOGN)O(\LOG{N})O(LOGN),判断回文串的时间复杂度(第一种和第二种)分别为O((N)8.LEN)O((N)_8.LEN)O((N)8 .LEN)和O((N)8.LEN/2)O((N)_8.LEN/2)O((N)8 .LEN/2)。第一种方法是可以优化的。我就不这里就不优化了。
那么总体时间复杂度为O(LOGN+(N)8.LEN)O(\LOG{N}+(N)_8.LEN)O(LOGN+(N)8 .LEN)。其中(N)8.LEN(N)_8.LEN(N)8 .LEN是八进制下N的长度。