package com.ybl.test.String; public class Str1 { //判断两个字符串STR1 、str2是否互为变形词。 // 条件.两个字符串出现的字符种类相同而且次数一样。 public static boolean isBianXingChi(String str1 ,String str2){ if(str1==null || str2 == null || str1.length()!=str2.length()){ return false; } //先将字符串转化为CHAR类型的数组 char[] str1Array =str1.toCharArray(); char[] str2Array =str2.toCharArray(); int[] arr =new int [256]; for(int i =0;i< str1Array.length ;i++){ arr[str1Array[i]]++; } //判断字符串两个每个出现的次数是不是相同 // i--其实当他们相同个数的时候I还是等于1,只有等于0才代表后面的已经超过前面的了 for(int j =0;j< str1Array.length ;j++){ if( arr[str2Array[j]]-- ==0){ return false ; } } return true ; } public static void main(String[] args) { System.out.println( isBianXingChi("123456ANNSS","123456ASSNN")); System.out.println( isBianXingChi("123456ANNSS","123456sSSNN")); } }
判断两个字符串STR1 、str2是否互为变形词。 条件.两个字符串出现的字符种类相同而且次数一样。
猜你喜欢
转载自blog.csdn.net/qq_39455116/article/details/80358437
今日推荐
周排行