2025年c++数据结构算法面试笔试题 .pdf
海纳百川,有容乃大;壁立千仞,无欲则刚。——林则徐
c++数据结构算法面试笔试题
请问C++的类和C里面的struct有什么区别?下面就由店铺为大
家介绍一下c++数据结构算法面试笔试题的文章,欢迎阅读。
c++数据结构算法面试笔试题篇1
1请你分别划划OSI的七层网络结构图,和TCP/IP的五层结构图?
2请你详细的解释一下IP协议的定义,在哪个层上面,主要有什
么作用?TCP与UDP呢?UDP,TCP在传输层,IP在网络层,TCP/IP
是英文TransmissionControlProtocol/InternetProtocol的缩写,
意思是传输控制协议/网际协议。TCP/IP协议组之所以流行,部分原
因是因为它可以用在各种各样的信道和底层协议(例如T1和X.25、以
太网以及RS-232串行接口)之上。确切地说,TCP/IP协议是一组包括
TCP协议和IP协议,UDP(UserDatagramProtocol)协议、
ICMP(InternetControlMessageProtocol)协议和其他一些协议的协
议组。TCP/IP协议并不完全符合OSI的七层参考模型。传统的开放式
系统互连参考模型,是一种通信协议的7层抽象的参考模型,其中每一
层执行某一特定任务。该模型的目的是使各种硬件在相同的层次上相
互通信。这7层是:物理层、数据链路层、网路层、传输层、话路层、
表示层和应用层。而TCP/IP通讯协议采用了4层的层级结构,每一层
都呼叫它的下一层所提供的网络来完成自己的需求。这4层分别为:
应用层:应用程序间沟通的层,如简单电子邮件传输(SMTP)、文
件传输协议(FTP)、网络远程访问协议(Telnet)等。
传输层:在此层中,它提供了节点间的数据传送服务,如传输控
制协议(TCP)、用户数据报协议(UDP)等,TCP和UDP给数据包加入传
输数据并把它传输到下一层中,这一层负责传送数据,并且确定数据
已被送达并接收。
互连网络层:负责提供基本的数据封包传送功能,让每一块数据
包都能够到达目的主机(但不检查是否被正确接收),如网际协议(IP)。
网络接口层:对实际的网络媒体的管理,定义如何使用实际网络
(如Ethernet、SerialLine等)来传送数据。
以家为家,以乡为乡,以国为国,以天下为天下。——《管子》
Q3:请问交换机和路由器分别的实现原理是什么?分别在哪个层
次上面实现的?
一般意义上说交换机是工作在数据链路层。但随着科技的发展,
现在有了三层交换机,三层交换机已经扩展到了网络层。也就是说:
它等于“数据链路层+部分网络层”。交换机中传的是帧。通过存储
转发来实现的。路由器是工作在网络层。路由器中传的是IP数据报。
主要是选址和路由。
Q4:请问C++的类和C里面的struct有什么区别?
结构是一种将数据集合成组的方法,类是一种同时将函数和数据
都集合成组的方法。结构和类在表面上的唯一区别是:类中的成员在
默认情况下是私有的,而结构中的成员在默认情况下是公用的。
classfoo
{
private:
intdata1;
public:
voidfunc