在Java中,我们可以结合回文串检测和字符串去重来实现一个功能,即检测一个字符串是否为回文串,并在此基础上对字符串进行去重和排序。以下是一个简单的示例:
import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;
public class PalindromeAndSort {
public static void main(String[] args) {
String input = "racecar madam";
System.out.println("Original string: " + input);
System.out.println("Is palindrome: " + isPalindrome(input));
System.out.println("Sorted unique characters: " + sortUniqueCharacters(input));
}
// 检测字符串是否为回文串
public static boolean isPalindrome(String s) {
int left = 0;
int right = s.length() - 1;
while (left < right) {
if (s.charAt(left) != s.charAt(right)) {
return false;
}
left++;
right--;
}
return true;
}
// 对字符串进行去重和排序
public static String sortUniqueCharacters(String s) {
Set<Character> charSet = new HashSet<>();
for (char c : s.toCharArray()) {
charSet.add(c);
}
char[] uniqueChars = charSet.toArray(new char[0]);
Arrays.sort(uniqueChars);
return new String(uniqueChars);
}
}
在这个示例中,我们首先定义了一个isPalindrome
方法来检测字符串是否为回文串。然后,我们定义了一个sortUniqueCharacters
方法来对字符串进行去重和排序。最后,我们在main
方法中调用这两个方法,并输出结果。
当你运行这个程序时,它将输出以下结果:
Original string: racecar madam
Is palindrome: true
Sorted unique characters: acdeimr
这个示例展示了如何将回文串检测和字符串去重排序结合在一起。你可以根据需要修改这个示例,以满足你的具体需求。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。