Hash tables are a data structure that efficiently maps keys to values, allowing for fast data retrieval in constant average time complexity, O(1). They achieve this by using a hash function to compute an index into an array of buckets or slots, from which the desired value can be found.