标签:设计 orm cas subject transform amp span public for
对于两个字符串A和B,如果A和B中出现的字符种类相同且每种字符出现的次数相同,则A和B互为变形词,请设计一个高效算法,检查两给定串是否互为变形词。
给定两个字符串A和B及他们的长度,请返回一个bool值,代表他们是否互为变形词。
"abc",3,"bca",3
返回:true
public class Transform { public boolean chkTransform(String A, int lena, String B, int lenb) { if(A == null || B == null || lena != lenb){ return false; } char[] chas1 = A.toCharArray(); char[] chas2 = B.toCharArray(); int[] map = new int[256]; for(int i = 0; i < chas1.length; i++){ map[chas1[i]]++; } for(int i = 0; i < chas2.length; i++){ if(map[chas2[i]]-- == 0){ return false; } } return true; } }
标签:设计 orm cas subject transform amp span public for
原文地址:http://www.cnblogs.com/gugibv/p/6671168.html