《LeetCode力扣练习》代码随想录——字符串(右旋字符串---Java)

《LeetCode力扣练习》代码随想录——字符串(右旋字符串—Java)



刷题思路来源于 代码随想录

55. 右旋字符串
  • 先全局反转,再部分反转
    import java.util.Scanner;
    
    public class Main{
        
        public static void main (String[] args) {
            
            Scanner in=new Scanner(System.in);
            int k=Integer.parseInt(in.nextLine());
            String s=in.nextLine();
            
            char[] chs=s.toCharArray();
            
            reverse(chs,0,chs.length-1);
            reverse(chs,0,k-1);
            reverse(chs,k,chs.length-1);
            
            System.out.println(chs);
            
        }
        
        private static void reverse(char[] chs,int left,int right){
            
            while(left<right){
                
                chs[left]^=chs[right];
                chs[right]^=chs[left];
                chs[left]^=chs[right];
                
                left++;
                right--;
                
            }
            
        }
        
    }
    

你可能感兴趣的:(LeetCode,leetcode,java,android)