本文共 1129 字,大约阅读时间需要 3 分钟。
题目一:翻转单词顺序
输入一个英文句子,翻转句子中单词的顺序,但单词内的顺序不变。为简单起见,标点符号和普通字符一样处理。例如,输入字符串"I am a student.",则输出"student. a am I"。
思路:
代码实现:
package Question58;public class T01 { public static void main(String[] args) { String str = " hello world! "; System.out.println(solve(str)); } public static String solve(String str) { String[] strs = str.trim().split(" "); StringBuilder sb = new StringBuilder(); for(int i = strs.length - 1; i >= 0; i--) { sb.append(strs[i]); if(i != 0) sb.append(" "); } return sb.toString(); }}
题目二:左旋转字符串
字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。比如,输入字符串"abcdefg"和数字2,该函数将返回左旋转两位得到的结果"cdefgab"。
思路:
代码实现:
package Question58;public class T02 { public static void main(String[] args) { System.out.println(solve("abcdefg", 2)); } public static String solve(String str, int n) { String s = ""; for(int i = n; i < n + str.length(); i++) { s += str.charAt(i % str.length()); } return s; }}
转载地址:http://ijjq.baihongyu.com/