zoukankan      html  css  js  c++  java
  • Java实现 LeetCode 541 反转字符串 II(暴力大法)

    541. 反转字符串 II

    给定一个字符串和一个整数 k,你需要对从字符串开头算起的每个 2k 个字符的前k个字符进行反转。如果剩余少于 k 个字符,则将剩余的所有全部反转。如果有小于 2k 但大于或等于 k 个字符,则反转前 k 个字符,并将剩余的字符保持原样。

    示例:

    输入: s = “abcdefg”, k = 2
    输出: “bacdfeg”
    要求:

    该字符串只包含小写的英文字母。
    给定字符串的长度和 k 在[1, 10000]范围内。
    PS:
    暴力
    欢迎评论

    class Solution {
        public static void swap(char [] a,int begin,int end){
            while(begin<end){
                a[begin]^=a[end];
                a[end]^=a[begin];
                a[begin]^=a[end];
                begin++;
                end--;
            }
        }
        public String reverseStr(String s, int k) {
            char [] c=s.toCharArray();
            int len=c.length;
            for(int i=0;i<len; i=i+2*k){
                if(i+2*k<=len||i+k<=len){
                    swap(c,i,i+k-1);
                }else{
                    swap(c,i,len-1);
                }
               
            }
            return new String(c);
            
            
        }
    }
    
  • 相关阅读:
    02-model设计
    01-开发环境搭建
    04-Uwsgi配置启动Nginx虚拟主机配置
    03-MySQL安装与配置
    02-Nginx配置
    01-Nginx安装
    22-注册、登录、验证登录
    21-django-pure-pagination分页
    (二)windows上使用docker
    Docker在windows7上的安装
  • 原文地址:https://www.cnblogs.com/a1439775520/p/13075497.html
Copyright © 2011-2022 走看看