大O说,我用下面的方法来搜索回文。我知道第一个是O(n),因为它贯穿整个字符串。 StringBuffer中的.reverse()是否也执行O(n)?我不担心找到一个更好的方法来解决问题我试图了解是否反向方法在物理上颠倒了字符串,还是比它更有效率?感谢O(n)???谁能告诉我的.reverse
public static boolean isAPalindrome(String s1){
String tmp = "";
int length = s1.length();
for(int i = 0; i < s1.length(); i++){
tmp += s1.charAt(s1.length()-i-1);
}
if (s1.equals(tmp)) return true;
return false;
}
public static boolean isAPalindrome(String s1){
StringBuffer a = new StringBuffer(s1);
return s1.equals(a.reverse().toString());
}
http://stackoverflow.com/questions/2439141/what-is-the-most-efficient-algorithm-for-reversing-a-string-in-java – novice
嗨马修,如果一个答案解决了你的问题,请接受通过点击旁边的绿色复选标记。谢谢 – Idos