字符串反转的三种方法

package zifuchuan;

/**
 * Created by Administrator on 2017/9/23.
 */
public class ReverseString {

    public static  void main(String[] args){
        String str = "abcdef";
        //方法1,字符串不可编辑,
       //时间复杂度O(N),N是字符串的长度,空间复杂度O(N)
/*int i,len=str.length(); StringBuffer sb = new StringBuffer(); for(i=len-1;i>=0;i--){ sb.append(str.charAt(i)); }*/ //方法2,字符串可编辑,
       // 时间复杂度O(N),N是字符串的长度,空间复杂度O(N)
/*char temp; int start=0,end=str.length(); char[] string = str.toCharArray(); for(start=0;start temp=string[start]; string[start]=string[end-1]; string[end-1]=temp; } for(int i=0;i System.out.print(string[i]);}*/ //方法3,不使用任何临时变量实现字符串反转,
       //时间复杂度O(N),N是字符串的长度,空间复杂度O(N)
char[] string = str.toCharArray() ; int end = str.length()- 1 ; for ( int i= 0 ;i;
i++ ,end--){ string[i]^=string[end] ; string[end]^=string[i] ; string[i]^=string[end] ; } for( int i= 0 ;ilength
;i++){ System. out.print(string[i]) ;} }}

你可能感兴趣的:(校园招聘,字符串,java)