【发布时间】:2014-01-28 11:01:13
【问题描述】:
如果字符串是回文(字符串可以是带有大写或小写字母、空格等的命题),我需要一种算法以尽可能快的执行时间进行验证。所有这些都在 Java 中。我有一个样品:
bool isPalindrome(string s) {
int n = s.length();
s = s.toLowerCase();
for (int i = 0; i < (n / 2) + 1; ++i) {
if (s.charAt(i) != s.charAt(n - i - 1)) {
return false;
}
}
return true;
}
我使用.toLowerCase()函数将字符串转换为小写字母,但我不知道它对执行时间的影响有多大。
我也不知道如何有效地解决单词之间的标点和空格问题。
【问题讨论】:
-
您的方法与所有其他有效的方法一样有效。不过,可以尝试找到一种更有效的方法....
-
这不是作业题吗?
-
@RolandTepp 为什么这很重要?
-
是的,我想这实际上是我的问题..用“有效”而不是“有效”。
标签: java performance palindrome