1.哈希表
哈希表可以理解为一个K,V数据库,是一种集合结构。
1.有key,无value :JAVA 用HashSet,C++用UnOrderedSet
2.有key,有value:JAVA用 HashMap,C++用UnOrderedMap
一般操作:增(put)、删(remove)、改(put)、查(get)
基础类型:内部按值传递;不是基础类型,按引用传递。
2.有序表
也是一种集合结构。
1.有key,无value :JAVA 用TreeSet,C++用OrderedSet
2.有key,有value:JAVA用 TreeMap,C++用OrderedMap
区别:有序表把key按顺序组织起来,哈希表完全不组织。
put(K key,V value); //加入
V get(K,key): //根据key值,返回value
void remove(K,key); //删除key
bool containsKey(K key);//是否有key
K fristKey(): //键值排序 最左(最小)的值
K lastKey(); //键值排序 最右(最大)的值
K floorKey(K key): //如果存入过key 返回key:否则返回所有键值的排序结果中,key的前一个
K ceilingKey(K key); //如果存入过key 返回key:否则返回所有键值的排序结果中,key的后一个