Hakupuu (engl. search tree) on tietojenkäsittelytieteessä dynaamisen joukon tietorakenne.
Puurakenne voidaan tasapainottaa hakujen nopeuttamiseksi, jolloin lisäykset puuhun hidastuvat.
Hakupuun tyyppejä ovat muun muassa: