最近一周一直参加各种笔试面试,也暴露了很多问题,笔者尽可能的把遇到的一些问题回顾一下也当复习一下:
电信:笔者家乡的电信,一开始是面的计算机类的。
问到了以下几个问题:
(1)TCP/IP有几层?
关于TCP/IP的问题,是有4层,分别是应用层、传输层、网络层、网络接口层
应用层:应用层是用户面向应用程序的统称,ICP/IP协议族在这一层面有着很多协议来支持不同的应用,许多大家所熟悉的基于Internet的应用的实现就离不开这些协议。如我们进行万维网(WWW)访问用到了HTTP协议、文件传输用FTP协议、电子邮件发送用SMTP、域名的解析用DNS协议、远程登录用Telnet协议等等,都是属于TCP/IP应用层的;就用户而言,看到的是由一个个软件所构筑的大多为图形化的操作界面,而实际后台运行的便是上述协议。
传输层:TCP所在的这一层,主要是用于提供应用程序之间的通信,TCP/IP协议族在这一层与有TCP和UDP协议
网络层:是TCP/IP协议族中非常关键的一层,主要定义了IP地址格式,从而能够使得不同应用类型的数据在Internet上通畅地传输,IP协议就是一个网络层协议。
网络接口层:(也可以说是数据链路层和物理层),这是TCP/IP软件的最低层,负责接收IP数据包并通过网络发送之,或者从网络上接收物理帧,抽出IP数据报,交给IP层。
(2)FTP的端口号是多少?Telnet的端口号是多少?
常用的代理协议端口号如下:
- . HTTP协议代理服务器常用端口号:80/8080/3128/8081/9080
- . SOCKS代理协议服务器常用端口号:1080
- . FTP(文件传输)协议代理服务器常用端口号:21
- . Telnet(远程登录)协议代理服务器常用端口:23
(3)路由器是哪一层的?交换机又是哪一层的?
路由器是工作是网络层的,而交换机是工作在第二层的数据链路层。
(4)三屏时代指的是哪三屏?
真心一开始不懂问的是什么,后来发现原来是PC屏、手机屏和电视屏。
电信的面试大致只记得是这几个问题,如果有记起来的在补充吧。
海康威视:重点介绍下这个企业,可以说是国内做安防最好的公司吧,就是作视频监控这一块的。在杭州,听说待遇也还不错。重点是被面试官的人格魅力给折服了,面完感觉二面没戏了,没想到还是让我进二面了。
面试官对着简历随便问了一些问题,很随意的,面试官人也特赞。
(1)(对着简历)说下你知道的几个排序算法吧?哪些是稳定的,哪些是不稳定的。
冒泡排序(稳定)
选择排序(稳定)
直接插入排序(稳定)
快速排序(不稳定)
希尔排序(不稳定)
堆排序(不稳定)
归并排序(稳定)
(2)说说你在项目中在哪运用到了堆排序吧,堆在什么场景下运用的比较多?
关于这个问题,笔者很惭愧,在学校的项目中更多是实现功能,的确也不知道用到了什么地方。
面试官是这么跟我说的:在多线程处理的时候,经常性会用到堆排序的问题来实现多线程的一个操作。(大体上是这个意思,可能描述的不对,谁对这一块了解的比较多的,给我留言,让我也学习学习啊)
(3)关于Linux内存管理的问题,Linux系统的内存分配方式?
我是先回答Linux系统的页式管理方式,然后回答的是分配方式一个是对连续分配方式的处理:
- 按页分配(伙伴关系)
- slab分配器
(4)虚函数主要怎么样?
简单地说,那些被virtual关键字修饰的成员函数,就是虚函数。虚函数的作用,用专业术语来解释就是实现多态性(Polymorphism),多态性是将接口与实现进行分离;用形象的语言来解释就是实现以共同的方法,但因个体差异而采用不同的策略。
虚函数主要用于实现多态性的。
剩下的是关于笔试中遇到的一些问题:
联发科:
(1)由中序遍历、前序遍历求后序遍历
(2)什么样的函数可以作为虚函数?
(3)类型转换的问题?
(4)大端格式与小端格式
(5)死锁的处理
(6)嵌入式中常用的位操作
-----(上述为常见到的一些问题)-------------
亚控:
(1)常见的几种设计模式图
(2)排序算法的一些时间复杂度