As tabelas de hash perfeitas dinâmicas e as tabelas de hash do cuco são duas estruturas de dados diferentes que suportam pesquisas de pior caso O (1) e inserções e exclusões esperadas em tempo de O (1). Ambos requerem O (n) espaço auxiliar e acesso a famílias de funções de hash para suas operações.
Eu acho que essas duas estruturas de dados são bonitas e brilhantes por si só, mas não tenho certeza de ver como e quando uma delas seria preferível à outra.
Existem contextos específicos em que uma dessas estruturas de dados tem uma clara vantagem sobre a outra? Ou eles são principalmente intercambiáveis?