我在做题目时,
老是看到堆的问题,(也就是排序)遇到的题目是:A: 20,76, 35,23, 80,54
B: 20,54,23,80,35,76
C: 80,23,45,76,20,54
D: 20,35,23,80,54,76在这些选项中,为什么 答案是:
         D呢?也就是为什么D是一个堆呢?

解决方案 »

  1.   

    好像是
    如果满足第i个元素总比2i和2i+1个元素小就是堆了,
    数据结构里的堆排序,看看 就知道了
      

  2.   

    n个关键字序列Kl,K2,…,Kn称为堆,当且仅当该序列满足如下性质(简称为堆性质):
         (1) ki≤K2i且ki≤K2i+1 或(2)Ki≥K2i且ki≥K2i+1
    http://student.zjzkb.edu.cn/course_ware/data_structure/web/paixu/paixu8.4.2.1.htm