一些面试题

作者: Du1in9 | 来源:发表于2022-04-23 09:47 被阅读0次

自我介绍、在校经历

姓名,专业,学校,奖学金,爱好,竞赛。

一、项目经历(略)

“我有两个项目是比较满意的,我先讲一下第一个,当时做的xxxx项目”
“然后这个项目大概实现了一个怎样怎样的功能:xxxx”
“我在项目中主要负责xxxx,项目的架构大致如下:xxxx”

谈论下简历中项目担任的角色、遇到的问题、团队交流
介绍自己的项目,项目的难点?
你的项目具体做了哪些改进,改进你是如何实现的?
项目做的测试,你对测试结果研究过指标吗?
项目有没有什么感觉遗憾的地方?
项目中的一些细节?

二、机考题复现、手撕代码

1.打印水仙花数。水仙花数的定义:一个三位数的个位、十位、百位的立方和等于本身
2.打印斐波那契数列。斐波那契数列的定义:F(0)=0,F(1)=1, F(n)=F(n - 1)+F(n - 2)
3.目标数字分解出所有质因子。
4.字符串排序,且非英文字母位置不变。
5.有序数组中是否存在两数之和等于目标数字,要求线性时间复杂度。
6.给定无重复元素数组和 target,找出所有数字和为 target的组合。
7.给两个字符串a和b,判断a调换两个字母位置能不能得到b
8.二分查找字符串中的target字符。
9.输出最长递减子序列
10.两数相加
11.两个栈实现一个队列
12.合并有序链表
13.数组中的最长山脉
14.反转链表
15.有效的括号
16.求二叉树的深度

三、基础知识提问

擅长的语言?c# / c++

C/C++内存有哪几种类型?堆(存动态对象)、栈(存局部变量)、程序代码区、全局/静态存储区、常量存储区
程序编译的过程?预处理、编译、汇编、链接。
计算机内部如何存储负数、浮点数?负数:标志位、补码。浮点数:符号位、指数位、尾数
什么是内存泄漏?面对内存泄漏和指针越界,你有哪些方法?
内存泄露:动态开辟的空间,在使用完后未释放,导致一直占据该内存单元。要记得指针的长度、记得free
什么是面向对象?面向对象的意义?将需求要素转化为对象进行问题处理的一种思想。将需求中的概念直观的映射到解决方案,提高软件产品的可维护性和可扩展性。

C++ 类的三大特性?多态的实现?
封装:将数据或函数集合在一个个的单元,防止被我们无意破坏。
继承:主要实现重用代码,节省开发时间。
多态:通过基类的指针或引用,在运行时动态调用绑定对象函数。
重载:在同一作用域内具有相同函数名、不同形参个数、或参数类型、或返回类型
重写:在不同作用域内函数名、形参个数、形参类型、返回类型都相同,且父类带有virtual关键字
重定义:在不同作用域内只要函数名相同,且不构成重写,均称之为重定义
介绍一下虚函数表?主要是一个虚函数类的地址表,它解决了继承、覆盖的问题,指明了实际所应该调用的函数。当我们用父类的指针来操作一个子类的时候,这张虚函数表就显得由为重要了。
介绍下 TCP 和 UDP?区别?TCP 是一种面向有连接的传输层协议。可靠传输,面向字节流,传输慢。
UDP 是一种面向无连接的传输层协议。实时传输,报文方式传输,效率高。
TCP/IP五层结构?常见的协议?应用、传输、网络、数据链路、物理层。
HTTP 和 HTTPS 的区别?
1.https协议需要到CA申请证书,需要一定费用。2.https使用的端口是443。3.HTTPS是加密传输、身份认证的网络协议,比http协议安全。
1.http是超文本传输协议,明文传输。2.http使用的端口是80。3.http的连接很简单,是无状态的。
cookie 和 session 的区别?cookie 存在客户端(浏览器),session 存在服务器端的一个文件里。session 的运行依赖 session id,而 session id 存在 cookie 中。也就是说,如果浏览器禁用了 cookie ,同时 session 也会失效。

线程和进程的区别?进程间的通信?管道、信号量、共享内存、套接字。
一个进程可以有很多线程,而一个线程只能属于一个进程,同一进程的多个线程可以并发执行
进程是系统调度资源的独立单位。线程是CPU调度的基本单位,线程是一个更接近于执行者的概念。
二分算法介绍一下?略
TCP三次握手说一下过程?第一次握手:浏览器向服务器发起建立连接的请求。第二次握手:服务器告诉浏览器,我同意你的连接请求,同时我也向你发起建立连接的请求。第三次握手:浏览器也告诉服务器,我同意建立连接。
死锁的必要条件,如何打破?互斥、占有且等待、循环等待、不可抢占。本质原因:系统资源有限、进程的推行顺序不合理。预防死锁、避免死锁、检测死锁、解除死锁。
对Linux了解多少?Linux常用发行版:centos、debian、ubuntu。优势:免费开源、安全稳定、跨平台硬件支持。

你大学期间印象最深的一门课是什么,它的体系是什么样?
① 数据结构,体系:链表、栈、队列、树、图、查找、排序
② 操作系统,体系:系统及结构分类,处理器调度,存储、文件、设备管理
③ 计算机通信网络,体系:OSI结构、通信技术、局域网

1、数据结构:

链表:增删改查、单链表、双向链表、循环链表
树:先、中、后、层次遍历
查找:顺序查找、二分查找

说说排序、以及时间空间复杂度?
速度:基排 > (堆排 > [快排 > 归并]) > 希尔 > (直接 > 简单 > 冒泡)
时间:n*k (nlog2n) n^1.3 (n^2)
空间:n+k 1 [nlon2n、n] 1

栈和队列什么区别?先进后出,先进先出。

介绍一下B树、B+树、红黑树、AVL树?
B树:节点关键字递增、左边分支<节点值<右边分支、叶子同层
B+树:叶节点有指针链接,对于范围查找更快,对于查找元素更稳定
红黑树:平衡度低、调整频率低、适用:增删多
AVL树:平衡度高、调整频率高、适用:查询多

图上的算法有知道哪些?最短路径算法:Dijkstra、Floyd,路径遍历:DFS 递归、BFS 非递归

介绍一下常见算法?贪心:求最少钞票数,hash:排序,动态规划:爬楼梯,回溯:求条件路径

2、操作系统:

CPU的结构能介绍下吗?控制单元、运算单元、存储单元。

多周期CPU有什么好处?优势:效率较高。缺点:不能并行,所以有了指令流水线。
单周期CPU:每执行一条指令需要花费一个时钟周期。
多周期CPU:每执行一条指令需要花费多个时钟周期。

介绍下操作系统,从它的进程调度,资源管理,内存管理这些方面?略
HRRF = FCFS+SJF、SRTF、RR、MLFQ、优先级调度
就绪 运行 开始 结束 周期 带权周期

进程的几个状态?新建 就绪 等待 运行 终止。

为什么用虚拟内存?扩大内存的容量,运行速度接近于内存,每位的成本又接近于外存

VA(虚拟地址)到PA(物理地址)怎么算的?假设虚拟地址16位,低12位为页内地址,高4位为页号,映射物理块号变为物理地址

物理内存怎么管理?连续存储管理(固定分区、可变分区),非连续存储管理(分页、分段)

外碎片怎么处理?内碎片呢?固定分区(内碎片)👉 改为可变分区(外碎片)👉 将小空闲区合并(移动技术)

3、计算机网络

华为路由器操作系统、通信协议?unix分时操作系统(可靠性高)、rip动态路由协议(根据跳数来判断最佳路由)

嵌入式开发?在嵌入式操作系统下进行硬件下的系统化设计和软件研发。

路由器,交换机?MAC、IP地址?
交换机(数据链路层):过滤,转发(依靠 MAC 地址)路由器(网络层):寻址,转发(依靠 IP 地址)
MAC地址(数据链路层)的分配是基于制造商;IP地址(网络层)的分配是基于网络拓朴。

网关?网关是复杂的网络设备,用于两个高层协议不同的网络互连。既可以用于广域网互连,也可以用于局域网互连。
网关是一个翻译器,与网桥简单地传达信息不同,网关对收到的信息要重新打包,以适应目的系统的需求。

主管面试

1、自我介绍
简要介绍学习经历、项目或实习经历即可。

2、职业综合测评
人生遇到的最大挫折,以及如何走出困境?课内与课外的协调。充分利用业余时间,注重理论到实践应用。

项目中你主要负责哪一块?你是如何做到统筹规划的 ?你发挥了什么作用?
数据库操作后台编写、图片上传功能,在项目开始时构思项目各部分,具体实现并不断调试,我起到了协商分工的作用。

说说三个优点和三个缺点?学习中注重基础、工作中抗压、生活中自我调节劳逸结合。内向慢热、比较笨、学的东西要消化很久(诚实回答),但是也从中学到了勤能补拙。

给你一个很困难的任务,你会怎么办?先尽自己的能力,如果不行的话,再找同事帮忙,或者跟领导直接说明白

如果你的团队中出现了不和谐你会如何处理?好好沟通

有在学生会吗?在学生会做了什么?组织了什么?没有。

对华为的看法?对岗位的理解?对自己的规划?想做前端还是后端?后端。
华为产品质量过硬,企业精神积极向上,支持民族企业。
1、具备嵌入式软件开发经验,熟悉开发流程
2、需要具备 C/C++语言,常用数据结构
第一阶段:研究生深造。
第二阶段:进入工作,熟悉工作环境,同公司文化融为一体。
第三阶段:不断丰富自己的专业知识,同时培养自己的人际关系。

对公司想问的问题?实习的具体工作、需要具备什么。

对加班的认识?若公司紧急项目需要可以配合,若非必须就不浪费公司资源

家庭情况?工作地点?手上有没有offer?不算富裕,家长支持专业重视教育,外地学生无所谓,没有。

我们公司被制裁你怎么看?“艰苦奋斗才有回报”你怎么看?因为贵公司优秀,确实。

为什么想来我们公司?课外娱乐活动的情况?喜欢贵公司的企业文化,课外生活丰富。

相关文章

  • 面试相关资料

    2018 iOS面试题系列2019 iOS 面试题大全(补充完整版)面试题学习交流常见的一些面试题

  • 大厂面试为什么需要了解JVM

    如果你经常注意面试题,你会发现现在面试题多多少少会含有jvm相关的面试题,之前也把一些jvm面试题汇总了下:面试题...

  • OC面试题目合集

    这里用来记录一些OC面试题目(不定期更新, 会逐渐补充...) 视图面试题 IOS面试题(UIView) ----...

  • 10道不得不会的Docker面试题

    Docker 以下是一些docker的基础面试题,下一篇docker进阶面试题。本系列《最少必要面试题》[(htt...

  • javaSpring面试题,安排

    收藏一些关于Spring框架的面试题,一方面是为了准备找工作的时候看面试题,另一方面,通过面试题的方式加深一些自己...

  • Python面试题

    记录下比较好的Python相关的一些面试题 1.kenwoodjw在github上整理分享的一些面试题-传送门这些...

  • Android 面试题汇总

    一、Android面试题 Android面试题包括Android基础,还有一些源码级别的、原理这些等。所以想去大公...

  • Android面试

    [toc] Android面试题 Android面试题除了Android基础之外,更多的问的是一些源码级别的、原理...

  • Android面试题

    二、Android面试题 Android面试题包括Android基础,还有一些源码级别的、原理这些等。所以想去大公...

  • Android面试题

    从网络找到一些面试题,以及自己想的一些面试题,欢迎补充和吐嘈。 初级工程师 一、Java 1. ”==”和equa...

网友评论

    本文标题:一些面试题

    本文链接:https://www.haomeiwen.com/subject/rrxaertx.html