"What is a hash table, how does it work, and what are the average and worst-case time complexities for lookup, insert, and delete?"