一、题目内容
二、题解
解法1:
思路
模拟,拼接
代码
class Solution { public String reverseLeftWords(String s, int n) { char[] leftPrefix = new char[n]; char[] ans = new char[s.length()]; char[] chars = s.toCharArray(); for (int i = 0; i < chars.length; i++) { if (i < n) { leftPrefix[i] = chars[i]; } else { ans[i - n] = chars[i]; } } for (int i = chars.length - n; i < chars.length; i++) { ans[i] = leftPrefix[i + leftPrefix.length - chars.length]; } return new String(ans); }}
解法2:
思路
取模
代码
class Solution { public String reverseLeftWords(String s, int n) { char[] ans = new char[s.length()]; char[] chars = s.toCharArray(); for (int i = n; i < chars.length + n; i++) { ans[i - n] = chars[i % chars.length]; } return new String(ans); }}