42.1 反转字符串
题目描述:输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。
思路:切割成单词,然后从后面开始遍历即可。
代码实现:
public String reverseSentence(String sentence) {
String[] array = sentence.split(" ");
StringBuilder sb = new StringBuilder();
for(int i =array.length - 1; i >= 0; i--) {
sb.append(" ");
sb.append(array[i]);
}
sb.deleteCharAt(0);
return sb.toString();
}
42.2 将字符串循环左移K 位
题目描述:对于一个给定的字符序列S,请你把其循环左移K位后的序列输出。
思路:拼接或反转三次字符串。
代码实现:
public String leftRotateString(String str,int n) {
if(str.length() == 0) {
return new String();
}
String str2 = str.substring(0, n);
String str3 = str.substring(n, str.length());
return str3 + str2;
}