多益网络2022春笔试题记忆版

这是一篇关于多益网络2022春季笔试的记忆版题目汇总,涵盖选择题、填空题和问答题。涉及数据结构如栈、队列、二叉树,排序算法,数据库知识以及进程通信等。编程题包括按权重随机选取样品的算法问题。

 多益网络笔试题

自己做完之后凭记忆整理出来的,填空题(数据结构、数据库)相对没那么难,所以只记了几个

 选择题:

1.A,B,C栈的出栈序列可能性有几种?

2.关于队列?

3.插入数据库表(name char(20) not null,age char(2),……)的正确字段?

4.哪一个序列不可能是选择排序的第二次排序?

填空题:

1.直接插入排序和选择排序的复杂度分别为多少?

2.数据库保护分为哪几种?

        安全性控制、完整性控制、并发性控制、数据恢复

3.二叉树后序输出顺序?

4.完全二叉树的结点个数为2^n-1个,则叶结点的个数为?

5.直接插入排序、选择排序,堆排序的时间复杂度分别为?

问答题:

1.静态链接库和动态链接库有什么区别?

动态链接库:动态链接库中包含了多个已经被编译、链接好的函数和数据资源,但并不包含函数的源码。动态链接库在windows下是.dll 文件,英文为Dynamic Link Library,在Linux下是.so文件。如果在你的程序中使用了动态链接库,那么在程序运行时,会动态地将该库加载,然后调用库中的函数。动态库的优点是便于维护和更新各个程序模块,比如在一个大型程序中,会有数十个甚至更多的模块。使用动态库封装每个模块后,在需要更新某模块时,只需替换该模块对应的.dll或者.so文件即可,而不需要更新整个程序,这一点是下文要讲到的静态链接库无法实现的。

静态链接库:静态链接库在windows下是.lib文件,在Linux下是.a文件。和动态链接库不同,它包含了函数的源代码,因此文件大小通常比动态库大很多。如果你的程序中依赖了某个静态库,那么在你的程序编译链接过程中,会自动从静态库中取出需要用到的函数代码,然后和当前程序进行链接,生成可执行文件。由此可见,最终的可执行文件在运行时不再需要依赖静态库,可直接运行,这一点明显区别于动态库(在动态库的情况中,程序在运行时必须能够找到相应的动态库文件)。另外和动态库不同的是,静态库中某函数更新后,整个程序需要重新编译链接。

2.进程之间的通信可以通过哪几种方式实现(至少6种)?

  1. 无名管道( pipe ):管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有亲缘关系的进程间使用。进程的亲缘关系通常是指父子进程关系。
  2. 高级管道(popen):将另一个程序当做一个新的进程在当前程序进程中启动,则它算是当前程序的子进程,这种方式我们成为高级管道方式。
  3. 有名管道 (named pipe) : 有名管道也是半双工的通信方式,但是它允许无亲缘关系进程间的通信。
  4. 消息队列( message queue ) : 消息队列是由消息的链表,存放在内核中并由消息队列标识符标识。消息队列克服了信号传递信息少、管道只能承载无格式字节流以及缓冲区大小受限等缺点。
  5. 信号量( semophore ) : 信号量是一个计数器,可以用来控制多个进程对共享资源的访问。它常作为一种锁机制,防止某进程正在访问共享资源时,其他进程也访问该资源。因此,主要作为进程间以及同一进程内不同线程之间的同步手段。
  6. 信号 ( sinal ) : 信号是一种比较复杂的通信方式,用于通知接收进程某个事件已经发生。
  7. 共享内存( shared memory ) :共享内存就是映射一段能被其他进程所访问的内存,这段共享内存由一个进程创建,但多个进程都可以访问。共享内存是最快的 IPC 方式,它是针对其他进程间通信方式运行效率低而专门设计的。它往往与其他通信机制,如信号两,配合使用,来实现进程间的同步和通信。
  8. 套接字( socket ) : 套解口也是一种进程间通信机制,与其他通信机制不同的是,它可用于不同机器间的进程通信。

3.使用sql语句将person(name,age)表中的年龄在30到40岁之间的人优先输出。

4.翻译一段英文(三句话左右)。

编程题:

 1.有n个样品,第i个样品的权重对应i,权重大的个体被抽到的概率大,权重小的个体被抽到的概率小,现在要求按比重从中随机选取一个样品。(c语言)


具体解决方案查看:https://blog.youkuaiyun.com/FBB360JAVA/article/details/82500221?utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2~aggregatepage~first_rank_ecpm_v1~rank_v31_ecpm-6-82500221.pc_agg_new_rank&utm_term=%E5%A4%9A%E7%9B%8A+%E7%AC%94%E8%AF%95&spm=1000.2123.3001.4430

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值