@Test public void testChuLiLianCiOfThree() { fail("Not yet implemented"); }
public int chuLiLianCiOfThree(Map<String, String> wordsForest, List<String> outputList, int countInputStringLength , String[] strings, StringBuilder[] fixWord){ if (outputList.size() == StableData.INT_ZERO){ didNotFindFirstChar(outputList, strings, fixWord, wordsForest); return countInputStringLength; } if (wordsForest.containsKey(fixWord[StableData.INT_ZERO].toString()) && (StableMaps.mingCi.containsKey(fixWord[StableData.INT_ZERO].toString()) || StableMaps.dongCi.containsKey(fixWord[StableData.INT_ZERO].toString())|| StableMaps.fuCi.containsKey(fixWord[StableData.INT_ZERO].toString()) || StableMaps.daiCi.containsKey(fixWord[StableData.INT_ZERO].toString()) || StableMaps.weiCi.containsKey(fixWord[StableData.INT_ZERO].toString()))){ countInputStringLength = parserFirstCharOfThree(countInputStringLength, outputList, strings, fixWord); return countInputStringLength; } if (wordsForest.containsKey(fixWord[StableData.INT_ZERO].toString()) && (StableMaps.zhuCi.containsKey(fixWord[StableData.INT_ZERO].toString()) || StableMaps.shengLueCi.containsKey(fixWord[StableData.INT_ZERO].toString()))){ for (int BackPosition = StableData.INT_ZERO; BackPosition < fixWord[StableData.INT_ONE].length(); BackPosition++){ int[] nestCountInputStringLength = new int[StableData.INT_ONE]; int result = loopCheckBackFix(fixWord, BackPosition, wordsForest, countInputStringLength, outputList, strings , nestCountInputStringLength); if (result == StableData.INT_RIGHT){ return nestCountInputStringLength[StableData.INT_ZERO]; } } if (StableMaps.CiTwo.containsKey(strings[StableData.INT_ONE])){ outputList.add(strings[StableData.INT_ONE]); fixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, fixWord[StableData.INT_ZERO].length()); fixWord[StableData.INT_ZERO].append(strings[StableData.INT_ONE]); return countInputStringLength- StableData.INT_ONE; } return countInputStringLength- StableData.INT_THREE; } if (StableMaps.CiTwo.containsKey(strings[StableData.INT_ONE])){ outputList.add(strings[StableData.INT_ONE]); fixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, fixWord[StableData.INT_ZERO].length()); return countInputStringLength- StableData.INT_ONE; } return countInputStringLength- StableData.INT_THREE; }
POSControllerImp implements POSController { public int chuLiLianCiOfThree(Map<String, String> wordsForest, List<String> outputList, int countInputStringLength , String[] strings, StringBuilder[] fixWord){ if (outputList.size() == StableData.INT_ZERO){ didNotFindFirstChar(outputList, strings, fixWord, wordsForest); return countInputStringLength; } if (wordsForest.containsKey(fixWord[StableData.INT_ZERO].toString()) && (StableMaps.mingCi.containsKey(fixWord[StableData.INT_ZERO].toString()) || StableMaps.dongCi.containsKey(fixWord[StableData.INT_ZERO].toString())|| StableMaps.fuCi.containsKey(fixWord[StableData.INT_ZERO].toString()) || StableMaps.daiCi.containsKey(fixWord[StableData.INT_ZERO].toString()) || StableMaps.weiCi.containsKey(fixWord[StableData.INT_ZERO].toString()))){ countInputStringLength = parserFirstCharOfThree(countInputStringLength, outputList, strings, fixWord); return countInputStringLength; } if (wordsForest.containsKey(fixWord[StableData.INT_ZERO].toString()) && (StableMaps.zhuCi.containsKey(fixWord[StableData.INT_ZERO].toString()) || StableMaps.shengLueCi.containsKey(fixWord[StableData.INT_ZERO].toString()))){ for (int BackPosition = StableData.INT_ZERO; BackPosition < fixWord[StableData.INT_ONE].length(); BackPosition++){ int[] nestCountInputStringLength = new int[StableData.INT_ONE]; int result = loopCheckBackFix(fixWord, BackPosition, wordsForest, countInputStringLength, outputList, strings , nestCountInputStringLength); if (result == StableData.INT_RIGHT){ return nestCountInputStringLength[StableData.INT_ZERO]; } } if (StableMaps.CiTwo.containsKey(strings[StableData.INT_ONE])){ outputList.add(strings[StableData.INT_ONE]); fixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, fixWord[StableData.INT_ZERO].length()); fixWord[StableData.INT_ZERO].append(strings[StableData.INT_ONE]); return countInputStringLength- StableData.INT_ONE; } return countInputStringLength- StableData.INT_THREE; } if (StableMaps.CiTwo.containsKey(strings[StableData.INT_ONE])){ outputList.add(strings[StableData.INT_ONE]); fixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, fixWord[StableData.INT_ZERO].length()); return countInputStringLength- StableData.INT_ONE; } return countInputStringLength- StableData.INT_THREE; } }
POSControllerImp implements POSController { public int chuLiLianCiOfThree(Map<String, String> wordsForest, List<String> outputList, int countInputStringLength , String[] strings, StringBuilder[] fixWord){ if (outputList.size() == StableData.INT_ZERO){ didNotFindFirstChar(outputList, strings, fixWord, wordsForest); return countInputStringLength; } if (wordsForest.containsKey(fixWord[StableData.INT_ZERO].toString()) && (StableMaps.mingCi.containsKey(fixWord[StableData.INT_ZERO].toString()) || StableMaps.dongCi.containsKey(fixWord[StableData.INT_ZERO].toString())|| StableMaps.fuCi.containsKey(fixWord[StableData.INT_ZERO].toString()) || StableMaps.daiCi.containsKey(fixWord[StableData.INT_ZERO].toString()) || StableMaps.weiCi.containsKey(fixWord[StableData.INT_ZERO].toString()))){ countInputStringLength = parserFirstCharOfThree(countInputStringLength, outputList, strings, fixWord); return countInputStringLength; } if (wordsForest.containsKey(fixWord[StableData.INT_ZERO].toString()) && (StableMaps.zhuCi.containsKey(fixWord[StableData.INT_ZERO].toString()) || StableMaps.shengLueCi.containsKey(fixWord[StableData.INT_ZERO].toString()))){ for (int BackPosition = StableData.INT_ZERO; BackPosition < fixWord[StableData.INT_ONE].length(); BackPosition++){ int[] nestCountInputStringLength = new int[StableData.INT_ONE]; int result = loopCheckBackFix(fixWord, BackPosition, wordsForest, countInputStringLength, outputList, strings , nestCountInputStringLength); if (result == StableData.INT_RIGHT){ return nestCountInputStringLength[StableData.INT_ZERO]; } } if (StableMaps.CiTwo.containsKey(strings[StableData.INT_ONE])){ outputList.add(strings[StableData.INT_ONE]); fixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, fixWord[StableData.INT_ZERO].length()); fixWord[StableData.INT_ZERO].append(strings[StableData.INT_ONE]); return countInputStringLength- StableData.INT_ONE; } return countInputStringLength- StableData.INT_THREE; } if (StableMaps.CiTwo.containsKey(strings[StableData.INT_ONE])){ outputList.add(strings[StableData.INT_ONE]); fixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, fixWord[StableData.INT_ZERO].length()); return countInputStringLength- StableData.INT_ONE; } return countInputStringLength- StableData.INT_THREE; }  }
POSControllerImp implements POSController { public int chuLiLianCiOfThree(Map<String, String> wordsForest, List<String> outputList, int countInputStringLength , String[] strings, StringBuilder[] fixWord){ if (outputList.size() == StableData.INT_ZERO){ didNotFindFirstChar(outputList, strings, fixWord, wordsForest); return countInputStringLength; } if (wordsForest.containsKey(fixWord[StableData.INT_ZERO].toString()) && (StableMaps.mingCi.containsKey(fixWord[StableData.INT_ZERO].toString()) || StableMaps.dongCi.containsKey(fixWord[StableData.INT_ZERO].toString())|| StableMaps.fuCi.containsKey(fixWord[StableData.INT_ZERO].toString()) || StableMaps.daiCi.containsKey(fixWord[StableData.INT_ZERO].toString()) || StableMaps.weiCi.containsKey(fixWord[StableData.INT_ZERO].toString()))){ countInputStringLength = parserFirstCharOfThree(countInputStringLength, outputList, strings, fixWord); return countInputStringLength; } if (wordsForest.containsKey(fixWord[StableData.INT_ZERO].toString()) && (StableMaps.zhuCi.containsKey(fixWord[StableData.INT_ZERO].toString()) || StableMaps.shengLueCi.containsKey(fixWord[StableData.INT_ZERO].toString()))){ for (int BackPosition = StableData.INT_ZERO; BackPosition < fixWord[StableData.INT_ONE].length(); BackPosition++){ int[] nestCountInputStringLength = new int[StableData.INT_ONE]; int result = loopCheckBackFix(fixWord, BackPosition, wordsForest, countInputStringLength, outputList, strings , nestCountInputStringLength); if (result == StableData.INT_RIGHT){ return nestCountInputStringLength[StableData.INT_ZERO]; } } if (StableMaps.CiTwo.containsKey(strings[StableData.INT_ONE])){ outputList.add(strings[StableData.INT_ONE]); fixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, fixWord[StableData.INT_ZERO].length()); fixWord[StableData.INT_ZERO].append(strings[StableData.INT_ONE]); return countInputStringLength- StableData.INT_ONE; } return countInputStringLength- StableData.INT_THREE; } if (StableMaps.CiTwo.containsKey(strings[StableData.INT_ONE])){ outputList.add(strings[StableData.INT_ONE]); fixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, fixWord[StableData.INT_ZERO].length()); return countInputStringLength- StableData.INT_ONE; } return countInputStringLength- StableData.INT_THREE; }  int chuLiMingCiOfThree(Map<String, String> wordsForest, List<String> outputList, int countInputStringLength,
			String[] strings, StringBuilder[] fixWord); int chuLiShiTaiCiOfThree(Map<String, String> wordsForest, List<String> outputList, int countInputLength,
			String[] strings, StringBuilder[] prefixWord); int chuLiFuCiOfThree(Map<String, String> wordsForest, List<String> outputList, int countInputLength,
			String[] strings, StringBuilder[] prefixWord); int chuLiBaDongCiOfTwo(Map<String, String> wordsForest, List<String> outputList, int countInputStringLength,
			String[] strings, StringBuilder[] prefixWord); int chuLiMingCiOfTwo(Map<String, String> wordsForest, List<String> outputList, int countInputStringLength
			, String[] strings, StringBuilder[] fixWord, int charPosition, String inputString); void addFixWordsOfTwo(int charPosition, String inputString, StringBuilder[] fixWords); int parserFirstCharOfTwo(int countInputStringLength, List<String> outputList, String[] strings
			, StringBuilder[] fixWord); int chuLiLianCiPostFixOfThree(Map<String, String> wordsForest, List<String> outputList, int countInputLength,
			String[] strings, StringBuilder[] prefixWord); int chuLiLianCiOfThree(Map<String, String> wordsForest, List<String> outputList, int countInputStringLength
			, String[] strings, StringBuilder[] fixWord); int loopCheckBackFix(StringBuilder[] fixWord, int backPosition, Map<String, String> wordsForest
			, int countInputStringLength, List<String> outputList, String[] strings, int[] nestCountInputStringLength); void didNotFindFirstChar(List<String> outputList, String[] strings, StringBuilder[] fixWord
			, Map<String, String> wordsForest); int parserFirstCharOfThree(int countInputStringLength, List<String> outputList, String[] strings
			, StringBuilder[] fixWord); int parserFirstTwoCharOfThree(int countInputStringLength, List<String> outputList, String[] strings
			, StringBuilder[] fixWord); int chuLiZhuCiOfThree(Map<String, String> wordsForest, List<String> outputList, int countInputStringLength
			, String[] strings, StringBuilder[] fixWord); int chuLiJieCiOfThree(Map<String, String> wordsForest, List<String> outputList, int countInputStringLength
			, String[] strings, StringBuilder[] fixWord); int chuLiLiangCiOfThree(Map<String, String> wordsForest, List<String> outputList, int countInputStringLength
			, String[] strings, StringBuilder[] fixWord); int chuLiMingCiOfTwoForMap(Map<String, String> wordsForest,  Map<String, WordFrequency> outputList, int countInputStringLength
			, String[] strings, StringBuilder[] fixWord); int parserFirstCharOfTwoForMap(int countInputStringLength, Map<String, WordFrequency> outputList, String[] strings
			, StringBuilder[] fixWord, Map<String, String> wordsForest); int chuLiLiangCiOfThreeForMap(Map<String, String> wordsForest, Map<String, WordFrequency> outputList, int countInputStringLength
			, String[] strings, StringBuilder[] fixWord); int chuLiJieCiOfThreeForMap(Map<String, String> wordsForest, Map<String, WordFrequency> outputList, int countInputStringLength
			, String[] strings, StringBuilder[] fixWord); int chuLiLianCiOfThreeForMap(Map<String, String> wordsForest, Map<String, WordFrequency>  outputList, int countInputStringLength
			, String[] strings, StringBuilder[] fixWord); int loopCheckBackFixForMap(StringBuilder[] fixWord, int backPosition, Map<String, String> wordsForest
			, int countInputStringLength, Map<String, WordFrequency> outputList, String[] strings, int[] nestCountInputStringLength); int chuLiZhuCiOfThreeForMap(Map<String, String> wordsForest, Map<String, WordFrequency>  outputList, int countInputStringLength
			, String[] strings, StringBuilder[] fixWord); void didNotFindFirstCharForMap(Map<String, WordFrequency> outputList, String[] strings, StringBuilder[] fixWord
			, Map<String, String> wordsForest); int parserFirstCharOfThreeForMap(int countInputStringLength, Map<String, WordFrequency> outputList, String[] strings
			, StringBuilder[] fixWord, Map<String, String> wordsForest); }
POSControllerImp implements POSController { public int chuLiLianCiOfThree(Map<String, String> wordsForest, List<String> outputList, int countInputStringLength , String[] strings, StringBuilder[] fixWord){ if (outputList.size() == StableData.INT_ZERO){ didNotFindFirstChar(outputList, strings, fixWord, wordsForest); return countInputStringLength; } if (wordsForest.containsKey(fixWord[StableData.INT_ZERO].toString()) && (StableMaps.mingCi.containsKey(fixWord[StableData.INT_ZERO].toString()) || StableMaps.dongCi.containsKey(fixWord[StableData.INT_ZERO].toString())|| StableMaps.fuCi.containsKey(fixWord[StableData.INT_ZERO].toString()) || StableMaps.daiCi.containsKey(fixWord[StableData.INT_ZERO].toString()) || StableMaps.weiCi.containsKey(fixWord[StableData.INT_ZERO].toString()))){ countInputStringLength = parserFirstCharOfThree(countInputStringLength, outputList, strings, fixWord); return countInputStringLength; } if (wordsForest.containsKey(fixWord[StableData.INT_ZERO].toString()) && (StableMaps.zhuCi.containsKey(fixWord[StableData.INT_ZERO].toString()) || StableMaps.shengLueCi.containsKey(fixWord[StableData.INT_ZERO].toString()))){ for (int BackPosition = StableData.INT_ZERO; BackPosition < fixWord[StableData.INT_ONE].length(); BackPosition++){ int[] nestCountInputStringLength = new int[StableData.INT_ONE]; int result = loopCheckBackFix(fixWord, BackPosition, wordsForest, countInputStringLength, outputList, strings , nestCountInputStringLength); if (result == StableData.INT_RIGHT){ return nestCountInputStringLength[StableData.INT_ZERO]; } } if (StableMaps.CiTwo.containsKey(strings[StableData.INT_ONE])){ outputList.add(strings[StableData.INT_ONE]); fixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, fixWord[StableData.INT_ZERO].length()); fixWord[StableData.INT_ZERO].append(strings[StableData.INT_ONE]); return countInputStringLength- StableData.INT_ONE; } return countInputStringLength- StableData.INT_THREE; } if (StableMaps.CiTwo.containsKey(strings[StableData.INT_ONE])){ outputList.add(strings[StableData.INT_ONE]); fixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, fixWord[StableData.INT_ZERO].length()); return countInputStringLength- StableData.INT_ONE; } return countInputStringLength- StableData.INT_THREE; }  int chuLiMingCiOfThree(Map<String, String> wordsForest, List<String> outputList, int countInputStringLength,
			String[] strings, StringBuilder[] fixWord); int chuLiShiTaiCiOfThree(Map<String, String> wordsForest, List<String> outputList, int countInputLength,
			String[] strings, StringBuilder[] prefixWord); int chuLiFuCiOfThree(Map<String, String> wordsForest, List<String> outputList, int countInputLength,
			String[] strings, StringBuilder[] prefixWord); int chuLiBaDongCiOfTwo(Map<String, String> wordsForest, List<String> outputList, int countInputStringLength,
			String[] strings, StringBuilder[] prefixWord); int chuLiMingCiOfTwo(Map<String, String> wordsForest, List<String> outputList, int countInputStringLength
			, String[] strings, StringBuilder[] fixWord, int charPosition, String inputString); void addFixWordsOfTwo(int charPosition, String inputString, StringBuilder[] fixWords); int parserFirstCharOfTwo(int countInputStringLength, List<String> outputList, String[] strings
			, StringBuilder[] fixWord); int chuLiLianCiPostFixOfThree(Map<String, String> wordsForest, List<String> outputList, int countInputLength,
			String[] strings, StringBuilder[] prefixWord); int chuLiLianCiOfThree(Map<String, String> wordsForest, List<String> outputList, int countInputStringLength
			, String[] strings, StringBuilder[] fixWord); int loopCheckBackFix(StringBuilder[] fixWord, int backPosition, Map<String, String> wordsForest
			, int countInputStringLength, List<String> outputList, String[] strings, int[] nestCountInputStringLength); void didNotFindFirstChar(List<String> outputList, String[] strings, StringBuilder[] fixWord
			, Map<String, String> wordsForest); int parserFirstCharOfThree(int countInputStringLength, List<String> outputList, String[] strings
			, StringBuilder[] fixWord); int parserFirstTwoCharOfThree(int countInputStringLength, List<String> outputList, String[] strings
			, StringBuilder[] fixWord); int chuLiZhuCiOfThree(Map<String, String> wordsForest, List<String> outputList, int countInputStringLength
			, String[] strings, StringBuilder[] fixWord); int chuLiJieCiOfThree(Map<String, String> wordsForest, List<String> outputList, int countInputStringLength
			, String[] strings, StringBuilder[] fixWord); int chuLiLiangCiOfThree(Map<String, String> wordsForest, List<String> outputList, int countInputStringLength
			, String[] strings, StringBuilder[] fixWord); int chuLiMingCiOfTwoForMap(Map<String, String> wordsForest,  Map<String, WordFrequency> outputList, int countInputStringLength
			, String[] strings, StringBuilder[] fixWord); int parserFirstCharOfTwoForMap(int countInputStringLength, Map<String, WordFrequency> outputList, String[] strings
			, StringBuilder[] fixWord, Map<String, String> wordsForest); int chuLiLiangCiOfThreeForMap(Map<String, String> wordsForest, Map<String, WordFrequency> outputList, int countInputStringLength
			, String[] strings, StringBuilder[] fixWord); int chuLiJieCiOfThreeForMap(Map<String, String> wordsForest, Map<String, WordFrequency> outputList, int countInputStringLength
			, String[] strings, StringBuilder[] fixWord); int chuLiLianCiOfThreeForMap(Map<String, String> wordsForest, Map<String, WordFrequency>  outputList, int countInputStringLength
			, String[] strings, StringBuilder[] fixWord); int loopCheckBackFixForMap(StringBuilder[] fixWord, int backPosition, Map<String, String> wordsForest
			, int countInputStringLength, Map<String, WordFrequency> outputList, String[] strings, int[] nestCountInputStringLength); int chuLiZhuCiOfThreeForMap(Map<String, String> wordsForest, Map<String, WordFrequency>  outputList, int countInputStringLength
			, String[] strings, StringBuilder[] fixWord); void didNotFindFirstCharForMap(Map<String, WordFrequency> outputList, String[] strings, StringBuilder[] fixWord
			, Map<String, String> wordsForest); int parserFirstCharOfThreeForMap(int countInputStringLength, Map<String, WordFrequency> outputList, String[] strings
			, StringBuilder[] fixWord, Map<String, String> wordsForest);  }