docs: public void read(Reader reader) {
  		totalword = 0;
  		while (reader.hasNext()) {
  			String content = (String) reader.next().getData();
  			int prechar = -1;
  			wordProb.adjustOrPutValue(prechar, 1, 1);
  			totalword += content.length()+2;
  			for (int i = 0; i < content.length()+1; i++) {
  				int idx;
  				if(i<content.length()){
  					String c = String.valueOf(content.charAt(i));
  					idx = alpahbet.lookupIndex(c);					
  				}
  				else{
  					idx = -2;					
  				}
  				wordProb.adjustOrPutValue(idx, 1, 1);
  
  
  				TIntFloatHashMap map = pcc.get(prechar);
  				if(map==null){
  					map = new TIntFloatHashMap();
  					pcc.put(prechar, map);
  				}				
  				map.adjustOrPutValue(idx, 1, 1);
  
  				TIntHashSet left = leftnodes.get(idx);
  				if(left==null){
  					left = new TIntHashSet();
  					leftnodes.put(idx, left);
  
  				}
  				left.add(prechar);
  
  				TIntHashSet right = rightnodes.get(prechar);
  				if(right==null){
  					right = new TIntHashSet();
  					rightnodes.put(prechar, right );
  				}
  				right.add(idx);		
  				prechar = idx;
  			}
  		}
  		lastid = alpahbet.size();
  		
  		System.out.println("[总个数：]\t" + totalword);
  		int size  = alpahbet.size();
  		System.out.println("[字典大小：]\t" + size);
  
  		statisticProb();
  
  	}