public boolean isPermutation_Hashtable(String s1, String s2){
		if(s1.length() != s2.length()) 
			return false;
		
		Hashtable<Character,Integer> ht = new Hashtable<Character,Integer>();
		//put all characters in s1 to the hash table
		for(int i=0;i<s1.length();i++){
			char k = s1.charAt(i);
			if(!ht.containsKey(k))
				ht.put(k, 1);
			else{			
				ht.put(k, ht.get(k)+1);				
			}	
			System.out.println(ht.toString());
		}
		//empty the hash table according to the string s2
		for(int i=0;i<s2.length();i++){
			char k = s2.charAt(i);
			if(ht.containsKey(k))
			    ht.put(k, ht.get(k)-1);
			else
				return false;				
			if(ht.get(k) == 0)
				ht.remove(k);
			System.out.println(ht.toString());
		}
		//empty hash table means s1 is a permutation of s2
		if(ht.isEmpty())
			return true;
		else
			return false;
	}