同步操作将从 编程语言算法集/Java 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
package strings;/*** Given a string, moving several characters in front of the string to the end of the string. For* example, move the two characters'a' and 'b' in front of the string "abcdef" to the end of the* string, so that the original string becomes the string "cdefab"*/public class Rotation {public static void main(String[] args) {assert rotation("abcdef", 2).equals("cdefab");char[] values = "abcdef".toCharArray();rotation(values, 2);assert new String(values).equals("cdefab");}/*** Move {@code n} characters in front of given string to the end of string time complexity: O(n)* space complexity: O(n)** @param s given string* @param n the total characters to be moved* @return string after rotation*/public static String rotation(String s, int n) {return s.substring(n) + s.substring(0, n);}/*** Move {@code n} characters in front of given character array to the end of array time* complexity: O(n) space complexity: O(1)** @param values given character array* @param n the total characters to be moved*/public static void rotation(char[] values, int n) {reverse(values, 0, n - 1);reverse(values, n, values.length - 1);reverse(values, 0, values.length - 1);}/*** Reverse character array** @param values character array* @param from begin index of given array* @param to end index of given array*/public static void reverse(char[] values, int from, int to) {while (from < to) {char temp = values[from];values[from] = values[to];values[to] = temp;from++;to--;}}}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。