免费智能真题库 > 历年试卷 > 程序员 > 2020年下半年 程序员 上午试卷 综合知识
  第42题      
  知识点:   堆排序
  章/节:   常用算法       

 
对于含有n个元素的关键码序列{k1,k2,...,kn},当且仅当满足关系ki≤k2i且ki≤k2i+1(i=1,2,...,[n/2])时称为小根堆。下面关键码序列中,(42)是小根堆。
 
 
  A.  131,158,288,325,763,522,451,617
 
  B.  131,325,451,617,522,288,158,763
 
  C.  763,617,325,522,451,288,131,158
 
  D.  763,451,522,617,131,288,325,158
 
 
 

 
  第43题    2013年下半年  
   28%
在第一趟排序之后,一定能把数据序列中最大或最小元素放在其最终位置上的排序方法是(43)。
  第35题    2017年上半年  
   54%
采用()算法对序列{18,12,10,11,23,2,7}进行一趟递增排序后,其元素的排列变为{12,10,11,18,2,7,23}。
  第41题    2016年下半年  
   65%
搜索引擎会通过日志文件把用户每次检索使用的所有查询串都记录下来,每个查询串的长度不超过255字节。假设目前有一千万个查询记录..
   知识点讲解    
   · 堆排序
 
       堆排序
        1)堆的概念
        对于n个元素的关键字序列{k1,k2,…,kn},当且仅当所有关键字都满足下列关系时称其为堆:
        
        从序列元素间的关系来看,堆是一棵完全二叉树的层次序列。显然,堆顶元素为序列中n个元素的最小值(或最大值)。若堆顶为最小元素,则称为小根堆;若堆顶为最大元素,则称为大根堆。
        2)堆排序的基本思想(小根堆)
        对一组待排序记录的关键字,首先把它们按堆的定义排成一个堆序列,从而输出堆顶的最小关键字,然后将剩余的关键字再调整成新堆,便得到次小的关键字,如此反复进行,直到全部关键字排成有序序列。
   题号导航      2020年下半年 程序员 上午试卷 综合知识   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
第42题    在手机中做本题