sokaoti.com
北京同城必应科技有限公司12月招聘面试题193道20201222

●队列通常采用两种存储结构是 (34) 。

(34) A.顺序存储结构和链表存储结构

B.散列方式和索引方式

C.链表存储结构和数组

D.线性存储结构和非线性存储结构


正确答案:A
【解析】队列通常采用两种存储结构是顺序存储和链表存储。


● 栈和队列都是线性的数据结构。以下关于栈和队列的叙述中,正确的是 (37) 。

(37)A. 栈适合采用数组存储,队列适合采用循环单链表存储

B. 栈适合采用单链表存储,队列适合采用数组存储

C. 栈和队列都不允许在元素序列的中间插入和删除元素

D. 若进入栈的元素序列确定,则从栈中出来的序列也同时确定


答案:B

顺序表示的栈和队列,必须预先分配空间,并且空间大小受限,使用起来限制比较多。而且,由于限定存取位置,顺序表示的随机存取的优点就没有了,所以,链式结构应该是首选。

 


在以下的叙述中,正确的是()。

A.线性表的顺序存储结构优于链表存储结构

B.二维数组是其数据元素为线性表的线性表

C.栈的操作方式是先进先出

D.队列的操作方式是先进后出


正确答案:B


数据的四种基本逻辑结构是指______。

A. 组、链表、树、图形结构

B.线性表、链表,栈队列、数组广义表

C.线性结构、链表,树,图形结构

D.集合,线性结构、树、图形结构


正确答案:D


通常,(64)应用于保护被中断程序现场等场合。

A.队列

B.堆栈

C.双链表

D.数组


正确答案:B
解析:在计算机中,堆栈被定义为一段特殊的内存区。其存取数据的特点是先进后出 (FILO)。这一特点使它最常用于保护被中断程序的现场等应用场合。


北京同城必应科技有限公司12月招聘面试题面试题面试官常问到的一些题目整理如下:问题 Q1:跨域请求问题django怎么解决的(原理)?可用的回答 : 1. 启用中间件 2. post请求 3. 验证码 4. 表单中添加%csrf_token%标签 问题 Q2:如何提高爬取效率?可用的回答 : 爬虫下载慢主要原因是阻塞等待发往网站的请求和网站返回 1,采用异步与多线程,扩大电脑的cpu利用率; 2,采用消息队列模式 3,提高带宽 问题 Q3:描述数组、链表、队列、堆栈的区别?可用的回答 : 数组与链表是数据存储方式的概念,数组在连续的空间中存储数据,而链表可以在非连续的空间中存储数据; 队列和堆栈是描述数据存取方式的概念,队列是先进先出,而堆栈是后进先出; 队列和堆栈可以用数组来实现,也可以用链表实现。 问题 Q4:为什么使用* args,* kwargs?可用的回答 :当我们不确定将多少个参数传递给函数,或者我们想要将存储的列表或参数元组传递给函数时,我们使用* args。*当我们不知道将多少关键字参数传递给函数时使用kwargs,或者它可以用于将字典的值作为关键字参数传递。标识符args和kwargs是一个约定,你也可以使用其他名称问题 Q5:什么是socket?简述基于tcp协议的套接字通信流程?可用的回答 : 套接字: 也称为BSD套接字,是支持TCP/IP的网络通信的基本操作单元, 可以看做是不同主机之间的进程进行双向通信的端点, 简单的说就是通信的两方的一种约定,用套接字中的相关函数来完成通信过程。 应用层通过传输层进行数据通信时,TCP和UDP会遇到同时为多个应用程序进程提供并发服务的问题 通信流程: 1. 服务器先用 socket 函数来建立一个套接字,用这个套接字完成通信的监听。 2. 用 bind 函数来绑定一个端口号和 IP 地址。 因为本地计算机可能有多个网址和 IP,每一个 IP 和端口有多个端口。需要指定一个 IP和端口进行监听。 3. 服务器调用 listen 函数,使服务器的这个端口和 IP 处于监听状态,等待客户机的连接。 4. 客户机用 socket 函数建立一个套接字,设定远程 IP 和端口。 5. 客户机调用 connect 函数连接远程计算机指定的端口。 6. 服务器用 accept 函数来接受远程计算机的连接,建立起与客户机之间的通信。 7. 建立连接以后,客户机用 write 函数向 socket 中写入数据。也可以用 read 函数读取服务器发送来的数据。 8. 服务器用 read 函数读取客户机发送来的数据,也可以用 write 函数来发送数据。 9. 完成通信以后, 用 close 函数关闭 socket 连接。 问题 Q6:如何删除python数组的值?可用的回答 :可以使用pop()或remove()方法删除数组元素。这两个函数之间的区别在于前者返回已删除的值,而后者则不返回。问题 Q7:如果让你来防范网站爬虫,你应该怎么来提高爬取的难度?可用的回答 : 1. 判断headers的User-Agent; 2. 检测同一个IP的访问频率; 3. 数据通过Ajax获取; 4. 爬取行为是对页面的源文件爬取,如果要爬取静态网页的html代码,可以使用jquery去模仿写html。 问题 Q8:简述 yield和yield from关键字?可用的回答 : 1、可迭代对象与迭代器的区别 可迭代对象:指的是具备可迭代的能力,即enumerable. 在Python中指的是可以通过for-in 语句去逐个访问元素的一些对象,比如元组tuple,列表list,字符串string,文件对象file 等。 迭代器:指的是通过另一种方式去一个一个访问可迭代对象中的元素,即enumerator。 在python中指的是给内置函数iter()传递一个可迭代对象作为参数,返回的那个对象就是迭代器,然后通过迭代器的next()方法逐个去访问。 问题 Q9:分布式爬虫主要解决什么问题?可用的回答 : 面对海量待抓取网页,只有采用分布式架构,才有可能在较短时间内完成一轮抓取工作。它的开发效率是比较快而且简单的。 问题 Q10:IO多路复用的作用?可用的回答 : 基本概念 IO多路复用是指内核一旦发现进程指定的一个或者多个IO条件准备读取,它就通知该进程。 IO多路复用适用如下场合: (1)当客户处理多个描述字时(一般是交互式输入和网络套接口),必须使用I/O复用。 (2)当一个客户同时处理多个套接口时,而这种情况是可能的,但很少出现。 (3)如果一个TCP服务器既要处理监听套接口,又要处理已连接套接口,一般也要用到I/O复用。 (4)如果一个服务器即要处理TCP,又要处理UDP,一般要使用I/O复用。 (5)如果一个服务器要处理多个服务或多个协议,一般要使用I/O复用。 与多进程和多线程技术相比,I/O多路复用技术的最大优势是系统开销小, 系统不必创建进程/线程,也不必维护这些进程/线程,从而大大减小了系统的开销。 算法题面试官常问到的一些算法题目整理如下(大概率会机考):算题题 A1:排序矩阵中第k小个元素题目描述如下:Given a n x n matrix where each of the rows and columns are sorted in ascending order, find the kth smallest element in the matrix.Note that it is the kth smallest element in the sorted order, not the kth distinct element.Example:matrix = 1, 5, 9, 10, 11, 13, 12, 13, 15,k = 8,return 13.Note: You may assume k is always valid, 1 k n2.找到第k小个数。测试用例:https:/

设计一个递归问题的非递归算法通常需要设置()结构。

A、线性表

B、数组

C、堆栈

D、队列


参考答案:C


顺序结构就是把数据存放在从某个存储地址开始的连续存储单元中。顺序结构包括静态顺序结构和动态顺序结构,其中静态顺序结构包括().

A、堆栈

B、队列

C、数组

D、线性表


参考答案:C,D


队列通常采用两种存储结构是(38)。

A.顺序存储结构和链表存储结构

B.散列方式和索引方式

C.链表存储结构和数组

D.线性存储结构和非线性存储结构


正确答案:A
解析:和线性表一样,队列可以有两种存储表示,即顺序存储和链式存储。


数据结构分为逻辑结构和存储结构,下列数据结构中不属于存储结构的是

A.线性链表

B.二叉链表

C.栈与队列

D.循环队列


正确答案:C
解析:线性链表是线性表的链式存储结构;二叉链表是二叉树的链式存储结构;栈与队列分别是特殊的线性表;循环队列是队列的一种顺序存储结构。可知,线性链表、二叉链表、循环队列均属于存储结构,而栈与队列属于逻辑结构。选项C为正确答案。


一般情况下,将递归程序转化成为非递归程序应该设置(1),但是消除(2)时不需要使用。

A.堆栈

B.队列

C.堆栈或队列

D.数组


正确答案:A

更多 “北京同城必应科技有限公司12月招聘面试题193道20201222” 相关考题
考题 下列不属于物理数据存储方式的是()。A、文本文档B、数组C、链表D、数据库正确答案:A

考题 单选题向量可以描述成()。A 固定长度的数组B 可变长度的数组C 一种队列D 一种堆栈正确答案:C解析:暂无解析

考题 单选题在以下的叙述中,正确的是( )。A 线性表的顺序存储结构优于链表存储结构。B 二维数组是其数据元素为线性表的线性表C 栈的操作方式是先进先出。D 队列的操作方式是先进后出正确答案:A解析:

考题 向量可以描述成()。A、固定长度的数组B、可变长度的数组C、一种队列D、一种堆栈正确答案:B

考题 在以下的叙述中,正确的是()。A、线性表的顺序存储结构优于链表存储结构B、二维数组是其数据元素为线性表的线性表C、栈的操作方式是先进先出D、队列的操作方式是先进后出。正确答案:B

考题 单选题实现函数调用需要()进行信息管理。A 队列B 堆栈C 数组D 参数正确答案:C解析:暂无解析

考题 高级语言的基本数据类型是()。A、变量、常量、标识符B、顺序、循环和分支C、数组、链表和堆栈D、整型、实型和字符正确答案:D

考题 贝尔的参数数据结构形式为()?A.链表结构B.树状结构C.堆栈结构D.队列结构参考答案:B

考题 填空题线性表、数组、堆栈和队列的共同特点是要求()来顺序存放数据元素。正确答案:连续的存储单元解析:暂无解析

考题 单选题下列叙述中正确的是(  )。A 栈与队列都只能顺序存储B 循环队列是队列的顺序存储结构C 循环链表是循环队列的链式存储结构D 栈是顺序存储结构而队列是链式存储结构正确答案:A解析:栈是所有的插入与删除都限定在表的同一端进行的线性表;队列是指允许在一端进行插入,而在另一端进行删除的线性表,二者既可以顺序存储也可以链式存储。为了充分地利用数组的存储空间,把数组的前端和后端连接起来,形成一个环形的表,称为循环队列,因此循环队列是队列的一种顺序存储结构。答案选择B选项。