更多“在堆排序的过程中,对n个记录建立初始堆需要进行()次筛运算,由初始堆到堆排序结束,需要对树根结点进行()次筛运算。 ”相关问题
  • 第1题:

    对于关键码序列18,30,35,10,46,38,5,40,进行堆排序(假定堆的根结点是最小关键码),在初始建堆过程中需进行的关键码交换次数为( )。

    A.2次

    B.3次

    C.4次

    D.5次


    正确答案:B
    解析:原始的堆如图1所示:因为n=8,所以n/2=4,所以从K4=10开始,第一次比较1040,不用交换:第二次比较35>5,两者相互交换,交换后如图2所示:第三次比较30>10,两者相互交换,交换后如图3所示;第四次比较18>5,两者相互交换,交换后如图4所示。所以交换的次数为3次。

  • 第2题:

    假定对元素序列(7,3,5,9,1,12)进行堆排序,并且采用小根堆,则由初始数据构成的初始堆为()

    A.1,3,5,7,9,12

    B.1,3,5,9,7,12

    C.1,5,3,7,9,12

    D.1,5,3,9,12,7


    B

  • 第3题:

    假定对元素序列(7, 3, 5, 9, 1, 12)进行堆排序,并且采用小根堆,则由初始数据构成的初始堆为()。

    A.1, 3, 5, 7, 9, 12

    B.1, 3, 5, 9, 7, 12

    C.1, 5, 3, 7, 9, 12

    D.1, 5, 3, 9, 12, 7


    B

  • 第4题:

    堆排序的时间代价主要花费在建初始堆和调整筛选上。


    D

  • 第5题:

    写出用下列数据{73 22 93 43 55 14 28 65}进行堆排序时 (1)建立的初始堆的结果 (2)第二趟排序的结果


    D