我有一个42位客户的哈希图分配给他们的预订系统座位,我需要对它们进行冒泡排序以按字母顺序显示。是否可以在HashMaps上执行此操作?
您可以使用以下代码对哈希图进行排序。
import java.util.HashMap;
import java.util.Map;
import java.util.TreeMap;
public class ReservationSystem {
static Map<String, Integer> map = new HashMap<>();
public static void sortbykey()
{
TreeMap<String, Integer> sorted = new TreeMap<>();
sorted.putAll(map);
for (Map.Entry<String, Integer> entry : sorted.entrySet())
System.out.println("Key = " + entry.getKey() +
", Value = " + entry.getValue());
}
public static void main(String[] args) {
//put your customers name and seat number
map.put("Jayant", 80);
map.put("Abhishek", 90);
map.put("Anushka", 80);
map.put("Amit", 75);
map.put("Danish", 40);
// use this method to sort based on keys
sortbykey();
}
}
Note:TreeMap为containsKey,get,put和remove操作提供了保证的log(n)时间成本。