笔试基础归纳-8.22

来源:互联网 发布:音乐喷泉软件下载 编辑:程序博客网 时间:2024/04/29 19:57
  • T1.算法的时间复杂度取决于()
A 待处理数据的状态B 处理器的速度C 问题的规模D 程序所占空间

答案是 AC
比如说快排,初始数据的顺序影响快排的时间复杂度。

  • T3.下面的哪个选项是自底向上分析方法()
A 递归下降分析法B 预测分析法C LL( 1)分析法D 算符优先分析法

答案D
递归下降法和LL(1)都是自顶向下的分析法。

  • T4.下列说法正确的是()
A 二维以上的数组其实是一种特殊的广义表B 数组一旦建立,结构的元素个数和元素间的关系就不再变化C 数组是一种线性结构,因此只能用来存储线性表D 数组采用顺序存储方式表示

C 线性是一种逻辑结构,数据结构中除去首尾元素外,其他元素都有唯一的前驱和后继。多维数组元素之间的逻辑关系(前驱和后继关系)通过数组下标体现出来。 线性结构是一个有序数据元素的集合,常用的线性结构有 线性表,栈,队列,双队列,数组,串

广义表是一种非线性的数据结构,常见的非线性结构有:二维数组,多维数组,树,图。

  • T5.利用时间重叠概念实行并行处理的是()
A 多处理机B 流水处理机C 相联处理机D 并行(阵列)处理机

答案是 B
时间并行性概念的实现方式就是采用流水处理部件。这是一种非常经济而实用的 并行技术 ,能保证计算机系统具有较高的性能价格比。目前的高性能微型机几乎无一例外地使用了流水技术。
并行处理计算机的结构主要有流水线方式 、多功能部件方式 、阵列方式、多处理机方式和数据流方式。
流水线处理机
将指令的执行过程分解为若干段,每段进行一部分处理。一条指令顺序流过所有段即执行完毕获得结果。当本条指令在本段已被处理完毕而进入下段时,下条指令即可流入本段。因此,在整个流水线上可以同时处理若干条指令。若各段的执行时间均为一个时钟节拍,则在正常情况下每拍可以输出一个结果,即完成一条指令。这就可加快处理机的速度。
程序中相邻指令的相关性会影响流水线处理机效率的发挥。例如,条件转移指令在上条指令执行完以前,有时不能确定后继指令;又如本条指令需要用上条指令的结果作为操作数等,都将中断流水线而使效率下降。
多功能部件
一台处理机具有多个功能部件。各功能部件可以并行地处理数据,因而处理机可以使用不同的功能部件并行执行几条指令,以提高处理速度。如有的计算机具有浮点加、定点加、浮点乘、浮点除、逻辑操作、移位等多个对不同数据进行处理的功能部件。一些流水线向量机也含有多个功能部件。程序在执行中因对各部件的需求不平衡,各功能部件不可能全部处于忙碌状态。指令间的相关性也影响机器的效率,如本条指令所需的功能部件尚在执行其他指令;又如本条指令所需操作数恰为尚未执行完毕的指令的结果等。
阵列处理机
一台处理机由多个相同的处理部件和一个统一的控制器组成。这个控制器解释指令并传送操作命令至全部处理部件。各处理部件按照控制器的命令同时进行完全相同的操作。阵列处理机又可分为浮点阵列处理机和位片式阵列处理机两类。
ILLIAC-Ⅳ机属于浮点阵列处理机,包括64个完全相同的处理部件(PU)和一个公共的控制部件(CU)。每个处理部件包括一个能执行64位浮点操作的处理单元(PE)和一个容量为2k字的存储器(PM)。64个处理部件排列成8×8阵列。每个处理部件与四邻处理部件均有直接数据通路。
多处理机系统
多处理机系统能提高系统的性能和可靠性。它是多指令流多数据流处理机。根据系统中各处理机的耦合程度,多处理机系统可分为两类。①非直接耦合的多处理机系统:系统中各处理机均有主存储器。各处理机由各自的操作系统进行管理,它们通过共享的输入输出系统进行通信。②直接耦合的多处理机系统:系统中各处理机共享主存储器,并受统一的操作系统管理。多处理机系统一般指直接耦合这一类。

  • T6.Linux中包括两种链接:硬链接(Hard Link)和软连接(Soft Link),下列说法正确的是()
A 软连接可以跨文件系统进行连接,硬链接不可以B 当删除原文件的时候硬链接文件仍然存在,且内容不变C 硬链接被删除,磁盘上的数据文件会同时被删除D 硬链接会重新建立一个inode,软链接不会

答案选 A

链接操作实际上是给系统中已有的某个文件指定另外一个可用于访问它的名称,对于这个新的文件名,我们可以为之指定不同的访问权限,以控制对信息的共享和安全性的问题。
如果链接指向目录,用户就可以利用该链接直接进入被链接的目录而不用打一大堆的路径名。而且,即使我们删除这个链接,会不会破坏原来的目录。

硬链接: 只能引用同一文件系统中的文件,他引用的是文件在文件系统中的物理索引(也称为innode)。当你移动或者删除原始文件时,硬链接不会被破坏,因为它所引用的是文件的物理数据而不是文件在文件结构中的位置。硬链接的文件不需要有用户访问原始文件的权限,也不会显示原始文件的位置,这样有助于文件的安全。如果你删除的文件有相应的硬链接,那么这个文件依然会保留,直到所有对他的引用都被删除。

软链接(符号链接):
软链接其实就是新建一个文件,这个文件就是专门用来指向别的文件的。
(那就和windows 下的快捷方式的那个文件有很接近的意味)。软连接产生的是一个新的文件,但这个文件的作用就是专门指向某个文件的,删了这个软连接文件,那就等于不需要这个连接,和原来的存在的实体原文件没有任何关系,但删除原来的文件,则相应的软连接不可用(cat那个软链接文件,则提示“没有该文件或目录“)。
硬链接与软链接的区别
硬连接是不会建立inode的,他只是在文件原来的inode link count域再增加1而已,也因此硬链接是不可以跨越文件系统的。相反软连接会重新建立一个inode,当然inode的结构跟其他的不一样,他只是一个指明源文件的字符串信息。一旦删除源文件,那么软连接将变得毫无意义。而硬链接删除的时候,系统调用会检查inode link count的数值,如果他大于等于1,那么inode不会被回收。因此文件的内容不会被删除。
硬链接实际上是为文件建一个别名,链接文件和原文件实际上是同一个文件。可以通过ls -i来查看一下,这两个文件的inode号是同一个,说明它们是同一个文件;而软链接建立的是一个指向,即链接文件内的内容是指向原文件的指针,它们是两个文件。
软链接可以跨文件系统,硬链接不可以;软链接可以对一个不存在的文件名(filename)进行链接(当然此时如果你vi这个软链接文件,linux会自动新建一个文件名为filename的文件),硬链接不可以(其文件必须存在,inode必须存在);软链接可以对目录进行连接,硬链接不可以。两种链接都可以通过命令 ln 来创建。ln 默认创建的是硬链接。使用 -s 开关可以创建软链接。

B选项“当删除原文件的时候硬链接文件仍然存在,且内容不变”错在文件的连接数会改变,减一。内容变了。
D 硬链接不会建立一个新的inode。

  • T7.在java中重写方法应遵循规则的包括()
A 访问修饰符的限制一定要大于被重写方法的访问修饰符B 可以有不同的访问修饰符C 参数列表必须完全与被重写的方法相同D 必须具有不同的参数列表

答案是 BC
A 选项访问修饰符的限制要大于或者等于被重写方法的访问修饰符

  • T8.以下集合对象中哪几个是线程安全的()
A LinkedListB ArrayListC VectorD Hashtable

linkedList、ArrayList都不是线程安全的,Vector是线程安全的,但是效率很低,现在很少用
Hashtable和Hasnmap功能差不多,但Hashtables是线程安全的

集合中线程安全的类有:vector,stack,hashtable,enumeration,除此之外均是非线程安全的类与接口

  • T9.一块草地,25头牛吃18天吃完,21头牛30天吃完,问要使草地一直吃不完最多可以放多少头牛。()
A 13B 15C 17D 19

答案B
假设一头牛一天吃草x,草地原来有草y,草地每天长草z,那么
25 * 18 * x = y + 18 * z
21 * 30 * x = y + 30 * z
两式相减,得到
z = 15x
也就是说草地每天的长草量等于15头牛一天的吃草量,因此15头牛吃不完

0 0