src/main/java/org/wltea/analyzer/core/IKArbitrator.java
void process(AnalyzeContext context , boolean useSmart){
		QuickSortSet orgLexemes = context.getOrgLexemes();
		Lexeme orgLexeme = orgLexemes.pollFirst();
		
		LexemePath crossPath = new LexemePath();
		while(orgLexeme != null){
			if(!crossPath.addCrossLexeme(orgLexeme)){
				//找到与crossPath不相交的下一个crossPath	
				if(crossPath.size() == 1 || !useSmart){
					//crossPath没有歧义 或者 不做歧义处理
					//直接输出当前crossPath
					context.addLexemePath(crossPath);
				}else{
					//对当前的crossPath进行歧义处理
					QuickSortSet.Cell headCell = crossPath.getHead();
					LexemePath judgeResult = this.judge(headCell, crossPath.getPathLength());
					//输出歧义处理结果judgeResult
					context.addLexemePath(judgeResult);
				}
				
				//把orgLexeme加入新的crossPath中
				crossPath = new LexemePath();
				crossPath.addCrossLexeme(orgLexeme);
			}
			orgLexeme = orgLexemes.pollFirst();
		}
		
		
		//处理最后的path
		if(crossPath.size() == 1 || !useSmart){
			//crossPath没有歧义 或者 不做歧义处理
			//直接输出当前crossPath
			context.addLexemePath(crossPath);
		}else{
			//对当前的crossPath进行歧义处理
			QuickSortSet.Cell headCell = crossPath.getHead();
			LexemePath judgeResult = this.judge(headCell, crossPath.getPathLength());
			//输出歧义处理结果judgeResult
			context.addLexemePath(judgeResult);
		}
	}
void process(AnalyzeContext context , boolean useSmart){
		QuickSortSet orgLexemes = context.getOrgLexemes();
		Lexeme orgLexeme = orgLexemes.pollFirst();
		
		LexemePath crossPath = new LexemePath();
		while(orgLexeme != null){
			if(!crossPath.addCrossLexeme(orgLexeme)){
				//找到与crossPath不相交的下一个crossPath	
				if(crossPath.size() == 1 || !useSmart){
					//crossPath没有歧义 或者 不做歧义处理
					//直接输出当前crossPath
					context.addLexemePath(crossPath);
				}else{
					//对当前的crossPath进行歧义处理
					QuickSortSet.Cell headCell = crossPath.getHead();
					LexemePath judgeResult = this.judge(headCell, crossPath.getPathLength());
					//输出歧义处理结果judgeResult
					context.addLexemePath(judgeResult);
				}
				
				//把orgLexeme加入新的crossPath中
				crossPath = new LexemePath();
				crossPath.addCrossLexeme(orgLexeme);
			}
			orgLexeme = orgLexemes.pollFirst();
		}
		
		
		//处理最后的path
		if(crossPath.size() == 1 || !useSmart){
			//crossPath没有歧义 或者 不做歧义处理
			//直接输出当前crossPath
			context.addLexemePath(crossPath);
		}else{
			//对当前的crossPath进行歧义处理
			QuickSortSet.Cell headCell = crossPath.getHead();
			LexemePath judgeResult = this.judge(headCell, crossPath.getPathLength());
			//输出歧义处理结果judgeResult
			context.addLexemePath(judgeResult);
		}
	}
void process ( AnalyzeContext context , boolean useSmart ) { QuickSortSet orgLexemes = context . getOrgLexemes ( ) ; Lexeme orgLexeme = orgLexemes . pollFirst ( ) ; LexemePath crossPath = new LexemePath ( ) ; while ( orgLexeme != null ) { if ( ! crossPath . addCrossLexeme ( orgLexeme ) ) { //找到与crossPath不相交的下一个crossPath	
 if ( crossPath . size ( ) == 1 || ! useSmart ) { //crossPath没有歧义 或者 不做歧义处理
 //直接输出当前crossPath
 context . addLexemePath ( crossPath ) ; } else { //对当前的crossPath进行歧义处理
 QuickSortSet . Cell headCell = crossPath . getHead ( ) ; LexemePath judgeResult = this . judge ( headCell , crossPath . getPathLength ( ) ) ; //输出歧义处理结果judgeResult
 context . addLexemePath ( judgeResult ) ; } //把orgLexeme加入新的crossPath中
 crossPath = new LexemePath ( ) ; crossPath . addCrossLexeme ( orgLexeme ) ; } orgLexeme = orgLexemes . pollFirst ( ) ; } //处理最后的path
 if ( crossPath . size ( ) == 1 || ! useSmart ) { //crossPath没有歧义 或者 不做歧义处理
 //直接输出当前crossPath
 context . addLexemePath ( crossPath ) ; } else { //对当前的crossPath进行歧义处理
 QuickSortSet . Cell headCell = crossPath . getHead ( ) ; LexemePath judgeResult = this . judge ( headCell , crossPath . getPathLength ( ) ) ; //输出歧义处理结果judgeResult
 context . addLexemePath ( judgeResult ) ; } }
分词歧义处理
* @param orgLexemes
@param useSmart
分词歧义处理 *