欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

字符串对称 计算插入字符最小对称数

程序员文章站 2022-05-15 21:20:00
...
//题目:要求对任意一个字符串,通过加入若干字符使其对称
//	如abcda至少要插入两个字符,两个一下无法使其对称abdcdba,adbcdba
	/*
	 *	思路: 
	  		判断首尾是否相等 , 有两种情况,一次的从两侧向中间推移
	 * a b c d 
	 *
	 */
	public static int symmetry(String source){  //字符串对称
		int length = source.length();
		int count = 0;   // 计算的是加入字母的个数
		int compareIndex = length-1;  // 记录的是最右边的索引
		
		// 
		for(int i=0;i<=compareIndex;i++){
			char begin = source.charAt(i);  //首
			char end  = source.charAt(compareIndex); //尾
			if(begin==end){  //首尾相等
				compareIndex--; //向中间靠拢
				continue; //结束本次循环 不用插入字符
			}else{
				count++;  //记录添加的字符
			}
		}
		return count;
		
	}
相关标签: ACM 字符串