public static int Attribute_selection_method(Node N,HashMap<Double,Node>child_nodes){
		int attribute=0;
	    Double info=Double.POSITIVE_INFINITY;
		ArrayList<ArrayList<Double>>doc_List=N.getDocList();
		int doc_size=doc_List.size();
		Set<Integer>keys=attribute_list_map.keySet();
		for(Integer key:keys){
			ArrayList<Double>value_list=attribute_list_map.get(key);//属性值列表
			HashMap<Double,ArrayList<ArrayList<Double>>>divide_Map=new HashMap<Double,ArrayList<ArrayList<Double>>>();
			for(int k=0;k<value_list.size();k++){
				ArrayList<ArrayList<Double>>list=new ArrayList<ArrayList<Double>>();
				divide_Map.put(value_list.get(k),list);//初始化分类map
			}
			for(int j=0;j<doc_size;j++){
				divide_Map.get(doc_List.get(j).get(key)).add(doc_List.get(j));//将元组根据属性值加入对应的map的value中
			}
			double temp=0.0;
			Set<Double>values=divide_Map.keySet();
			for(Double value:values){
				ArrayList<ArrayList<Double>>list=divide_Map.get(value);
				temp=temp+(list.size()/doc_size)*getInfo(list);
			}
			
			if(temp<info){
				info=temp;
				attribute=key;
				for(Double value:values){
					ArrayList<ArrayList<Double>>list=divide_Map.get(value);
					Node node=new Node(list);
					child_nodes.put(value, node);
				}
			}
		}
	
		return attribute;
	}