反转字符串

来源:互联网 发布:邱少云违背生理学知乎 编辑:程序博客网 时间:2024/06/05 18:33

    给定一个字符串,反转指定的部分。比如字符串为abc,全部反转为cba; 如果字符串为abcdefg,那么反转下标2-4的部分,字符串变为abedcfg。

     使用对换反转法的实现代码如下:

package com.threeTop.www;/** * 字符串的反转 * @author wjgs * */public class Reverse {          /** * 对换位置反转字符串 * @param str * @param start * @param end * @return */public static String reverse(String str,int start,int end){char[]array=str.toCharArray();int mid=(end-start)/2+start;for(int i=0;i<=mid-start;i++){swap(array,start+i,end-i);}return String.valueOf(array);}/** * 数组指定位置的互换 * @param array * @param i * @param j */private static void swap(char[] array, int i, int j) {// TODO Auto-generated method stubchar temp=array[i];array[i]=array[j];array[j]=temp;}public static void main(String[] args) {// TODO Auto-generated method stub       System.out.println(Reverse.reverse("abcdefg", 0,6));       System.out.println(Reverse.reverse("abcdefg", 2,4));}}

0 0