ساختار داده هیپ یک ساختار داده بر مبنای درخت که به صورت دودویی هست ایجاد شده. یعنی به صورت باینری پیاده سازی میشه در نتیجه پیچیدگی زمانی ایجادش O(log n) خواهد بود. و تمامی شاخهها بجز ردیف آخر که از سمت چپ شروع به پر کردن میکنیم، دو فرزند خواهند داشت. کاربرد اصلیش برای پیدا کردن ماکزیمم و مینیموم در لحظه است که پیچیدگی خوندن ماکس و مین با این روش O(1) خواهد بود.