全部科目 > 软件设计师 >
2012年上半年 上午试卷 综合知识
第 61 题
知识点 归并排序   排列  
章/节 计算机软件知识  
 
 
递增序列 A(a1,a2…,an)和B的(b1,b2,…,bn)元素互不相同,若需将它们合并为一个长度为2n的递增序列,则当最终的排列结果为(61)时,归并过程中元素的比较次数最多。
 
  A. 

a1,a2…,an, b1,b2,…,bn

 
  B. 

b1,b2,…,bn,a1,a2…,an

 
  C.  a1,b1,a2,b2,…,ai,bi,…,an,bn
 
  D.  a1,a2,…,ai/2,b1,b2,…,bi/2,ai/2+1,…,an,bi/2+1,bi/2+2,bn




 
 
相关试题     计算机软件知识 

  第20题    2019年下半年  
将编译器的工作过程划分为词法分析、语法分析、语义分析、中间代码生成、代码优化和目标代码生成时,语法分析阶段的输入是(20)。若程序中的括号不配对,则会在..

  第37题    2010年下半年  
开-闭原则(Open-Closed Principle,OCP)是面向对象的可复用设计的基石。开-闭原则是指一个软件实体应当对(37)开放,对(38)关闭:里氏代换原则(Liskov Substitu..

  第63题    2018年下半年  
在一条笔直公路的一边有许多房子,现要安装消防栓,每个消防栓的覆盖范围远大于房子的面积,如下图所示。现求解能覆盖所有房子的最少消防栓数和安装方案(问题求..

 
知识点讲解
· 归并排序
· 排列
 
        归并排序
        归并是将两个或两个以上的有序文件合并成为一个新的有序文件。
        归并排序是把一个有n个记录的无序文件看成是由n个长度为1的有序子文件组成的文件,然后进行两两归并,如此重复,直至最后形成一个包含n个记录的有序文件为止。这种反复将两个有序文件归并成一个有序文件的排序方法称为两路归并排序。
 
        排列
        设S为具有n个不同元素的n元集,从S中选取r个元素且考虑其顺序称为S的一个r排列,不同排列的总数记为,有时也用P(n,r)表示。如果r=n,则称这个排列为S的全排列。从排列的定义可知,如果两个排列相同,不仅这两个排列的元素必须完全相同,而且排列的顺序也必须完全相同。
        
        例子1:用0~9这十个数字,可以组成多少个没有重复数字的三位数?
        解法1:由于百位数上的数字不能为0,因此可先考虑排百位上的数字,再排十位和个位上的数字。百位数上的数字只能从除0以外的1~9数字中任选一个,有种;十位和个位上的数字,可以从余下的9个数字中任选两个,有种。根据乘法原理,所求的三位数的个数是。
        解法2:可先考虑从0~9这十个数字中任取三个数字的排列数(),再减去其中以0开头的排列数()。因此,所求的三位数的个数是。
        解法3:符合条件的三位数可以分为三类:每一位数字都不是0的三位数有个;个位数是0的三位数有个;十位数是0的三位数有个。根据加法原理,符合条件的三位数个数是。



更多复习资料
请登录电脑版软考在线 www.rkpass.cn

京B2-20210865 | 京ICP备2020040059号-5
京公网安备 11010502032051号 | 营业执照
 Copyright ©2000-2026 All Rights Reserved
软考在线版权所有