牛客网刷题笔记(一)

1.打印机是面向块的设备,这种说法正确吗? 错

面向块 :将信息保存在块中,传输时一次传一块,例如磁盘、usb智能卡等。

面向流:将信息以字节流的方式输入输出数据,没有块结构,例如终端, 打印机 等。

2.循环语句while(!E);中的表达式!E等价于_E==0 _

!E是循环条件,即!E !=0,即E==0。

3.cin 是 istream 类的成员函数。 错

cin是istream的类对象;而istream的常见成员函数有:istream::getline() 函数,istream::ignore() 函数,istream::get() 函数等。

4.C 语言中最简单的数据类型包括( 整型、实型、字符型 )

C 语言中最简单的数据类型有下面几种:

整型:byte、short、int、long;实型:float、double;字符型:char

而没有逻辑型,bool 值 true 和 false 是用 0 和 1 来进行表示的。

c++中的基本数据类型为(整形,字符型,浮点型,布尔型) 。

5.浮点数的表数效率计算:

尾数基数为  rm  的浮点数的表数效率为:(rm-1)/rm

链接:

https://www.nowcoder.com/questionTerminal/2dec608d57f046809606aca2ec841376

问题:采用隐含位表述方法的表述效率为?

6.Hadoop 运行的模式是(单机版、分布式、伪分布式)

Hadoop的三种运行模式 :

  • 独立(本地)运行模式:无需任何守护进程,所有的程序都运行在同一个JVM上执行。在独立模式下调试MR程序非常高效方便。所以一般该模式主要是在学习或者开发阶段调试使用 。

  • 伪分布式模式: Hadoop守护进程运行在本地机器上,模拟一个小规模的集群,换句话说,可以配置一台机器的Hadoop集群,伪分布式是完全分布式的一个特例。

  • 完全分布式模式:Hadoop守护进程运行在一个集群上

注意:所谓分布式要启动守护进程 ,即:使用分布式hadoop时,要先启动一些准备程序进程,然后才能使用比如start-dfs.sh start-yarn.sh。而本地模式不需要启动这些守护进程 。

7.合法的C语言用户标识符需要满足以下条件:

  • 标志符由字母、数字、下划线组成;

  • 且开头必须是字母或下划线,不能是数字;

  • 关键字不能是标识符。

注:python中的标识符是区分大小写的。

以下划线开头的标识符是有特殊意义的。

  • 以单下划线开头(_foo)的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用“from xxx import *”而导入;

  • 以双下划线开头的(__foo)代表类的私有成员

  • 以双下划线开头和结尾的(foo)代表python里特殊方法专用的标识,如init()代表类的构造函数

8.二叉树结点个数相关问题:

假设n0为叶子结点,n1为度为1的结点,n2为度为2的结点,n为总结点;则:n=n0+n1+n2;二叉树中n2=n0-1。

9.折半查找的时间复杂性为(O(logn))

10.关于虚拟局域网VLAN的叙述:

  • VLAN是由一些局域网网段构成的与物理位置无关逻辑组

  • 利用以太网交换机可以很方便地实现VLAN;

  • 每一个VLAN的工作站可处在不同的局域网中;

  • 虚拟局域网只是局域网给用户提供的一个种服务,而并不是一种新型局域网;

  • VLAN本质就是指一个网段,之所以叫做虚拟的局域网,是因为它是在虚拟的路由器的接口下创建的网段。

11.数据库范式:

  • 第一范式:原子性,字段不可分割

  • 第二范式:没有包含在主键中的列必须完全依赖于主键,而不能只依赖于主键的一部分。

  • 第三范式:不能存在传递依赖。需要确保数据表中的 每一列数据都和主键直接相关,而不能间接相关 。

12.对一个AOV 网,从源点到终点的路径最长的路径称作关键路径。(错)

  • AOV网的应用一般是求拓扑排序,其顶点表示活动;

  • AOE网的应用一般是求关键路径,有向边表示活动,顶点表示事件。

13.如果让你来设计一个批处理多道系统,首先要考虑的是(吞吐量,系统效率)

道批处理系统有两个特点:

  • 多道:系统内可同时容纳多个作业。这些作业放在外存中,组成一个后备队列,系统按一定的调度原则每次从后备作业队列中选取一个或多个作业进入内存运行,运行作业结束、退出运行和后备作业进入运行均由系统自动实现,从而在系统中形成一个自动转接的、连续的作业流。

  • 成批:在系统运行过程中,不允许用户与其作业发生交互作用,即:作业一旦进入系统,用户就不能直接干预其作业的运行。

14.Linux下通过哪个命令怎么查看中断?

  • /proc/interrupts 显示使用的中断

  • /proc/ioports 当前使用的I/O端口

  • /proc/kcore 系统物理内存映像。与物理内存大小完全一样,但不实际占用这么多的内存;

  • /proc/kmsg 内核输出的消息,也被送到syslog。

15.最佳适应算法的空白区是( 按大小递增顺序排列 )

 

16.并发操作可能带来的数据不一致不包括( 死锁 )

包括:丢失修改、不可重复读和读脏数据。

17.设有属性 A,B,C,D,以下表示中不是关系的是( R(A×B×C×D))

关系的描述称为关系模式。对关系的描述,一般表示为:关系名(属性1,属性2.....属性n)。例如:课程(课程号、课程名称、学分、任课老师)

在关系代数运算中,符号×的含义是广义笛卡儿积,笛卡儿积只对于关系之间的运算有意义。

18.解决碎片问题最好的存储管理方法是( 基本页式存储管理 )

页又页内碎片,段没有内部碎片,但是会造成外部碎片。

19.已知串S=′aaab′,其Next数组值为( 0123 )

next数组

20.利用二叉链表存储树,则根结点的右指针是( 空 )

以二叉链表作为树的存储结构,左孩子右兄弟。

21.早期的Unix操作系统采用的技术:

早期的Unix操作系统没有提供虚拟存储器,为了使容量有限的内存能支持较大的规模的程序,系统除采用正文段共享和自我覆盖技术外,主要采用了程序对换技术来扩充存储容量,使其具有类似于虚拟存储器的作用。

22.在数据库系统中,视图可以提供数据的 ( 安全性 )

利用视图可以把对数据库的访问限制在一定范围内,有利于对机密数据的保护。

23.下列有关总线定时的叙述中,错误的是 ( C )

A.异步通信方式中,全互锁协议最慢 B.异步通信方式中,非互锁协议的可靠性最差 C.同步通信方式中,同步时钟信号可由各设备提供 D.半同步通信方式中,握手信号的采样由同步时钟控制

24.下列功能相同的一组DOS命令是( REN和RENAME )

  • COPY和DISKCOPY 文件和整盘复制(备份时用较多)

  • REN和RENAME 重命名

  • COMP和DISKCOMP 比较文件和比较软盘(不能用于硬盘)

  • DIR和TYPE 列出文件目录和显示文件内容

25.带宽计算

 

26.有关多线程,多进程的描述错误的是?( 进程是CPU调度和分派的基本单位。 )

  • 子进程获得父进程的数据空间,堆和栈的复制品

  • 线程可以与同进程的其他线程共享数据,但是它拥有自己的栈空间且拥有独立的执行序列

  • 线程执行开销小,但是不利于资源管理和保护

 

27.堆排序的时空复杂度:

  • 空间复杂度是(O(1));

  • 堆排序中构建堆的时间复杂度是(O(n));

  • 初始化建堆过程时间复杂度:O(n)

  • 更改堆元素后重建堆时间复杂度:O(nlogn)

28.KMP算法的特点是在模式匹配时指示主串的指针不会变小(对)

 

29.下列协议属于应用层协议的是 (FTP、SMTP和TELNET)

 

30.临界区

临界区是指进程中用于访问互斥共享资源的那段代码。

31.按记录的逻辑结构,文件主要分为:

堆文件、索引文件、索引顺序和(顺序文件)。

32.下列关于UDP协议的叙述中,正确的是

I.提供无连接服务

II.提供复用/分用服务

33.关于TCP可靠数据传输服务的论述

  • 只有当超时事件发生,TCP才会执行重传;错,不一定需要超时才重传,出错了也可以重传;

  • 每次TCP重传时,都重新为定时器设置一个固定时间间隔;错,这个时间间隔不是固定的。超时时间间隔 RTO,如果太短可能导致大量不必要的重传,如果太长则会导致性能下降;所以超时时间间隔 RTO是通过往返时间RTT算出来的。TCP 采用了一个高度动态的算法,来不断的调整时间间隔,总之超时时间间隔不是固定的

  • TCP接收方不需要对乱序到达的分组进行确认;错,TCP是面向连接的,提供可靠服务的,所以需要对乱序到达的分组进行确认以及重排

  • 一旦收到3个冗余ACK,TCP就执行快速重传;对,如果发送方收到连续3条的同一个序列号的ACK,那么就会启动快速重传机制,不需要等到timeout,把这个ACK对应的发送包重新发送一次。

转载于:https://www.cnblogs.com/ST-2017/p/10540268.html

你可能感兴趣的:(牛客网刷题笔记(一))