【一面】引擎架构-后端研发日常实习生

本文涵盖了多种IT技术主题,包括使用Xmind和Visio的场景,算法问题如链表反转,计算机网络中的四次挥手过程及其时间概念,C++的继承和数据库持久化实现。此外,还讨论了MySQL的底层实现、HashMap的工作原理以及Git冲突解决策略。同时,文章提到了Redis常用命令和Linux的网络及进程管理命令,最后介绍了栈和队列这两种基础数据结构。
摘要由CSDN通过智能技术生成

自我介绍

你简历上说你用Xmind、Visio之类的,平时什么场合你会使用

算法题:单链表的反转

leetcode 206 反转链表

计算机网络四次挥手,四次挥手的close_wait是多久,为什么?

三次握手、四次挥手

拥塞控制

简述版拥塞控制


C++的继承,派生类、抽象类之类的?(有点不懂,所以记不清楚)
C++继承


mysql的底层实现

如何实现数据库的持久性

MySQL


hashmap的底层实现

HashMap底层实现原理及面试问题


你常用的C++,STL,vector?vector会溢出嘛

C++ Vector详细总结


git 项目pull的时候冲突了,最新的版本,跟自己的不同,怎么解决(面试官说的,没听清,大概是——直接pull,或者fetch的时候提示修改,手动)

解决git pull出现冲突 多重超详细分析


了解redis吗,常见命令

Redis【入门】就这一篇!


linux命令?网络的,关于tcp的,进程的
Linux常用网络命令

Linux 常用操作命令-进程操作命令

1、网络管理:可以帮助管理员配置和监控网络连接,并诊断和解决网络问题。

  1. ifconfig:用于配置和显示网络接口的状态。

  2. ping:用于测试与另一个主机的连通性。

  3. traceroute:用于检测数据包在网络中的路由路径。

  4. netstat:用于显示网络状态和连接信息。

  5. nslookup:用于查询域名系统 (DNS) 服务器,以获取主机名和 IP 地址。

  6. route:用于设置和显示网络路由表。

  7. iptables:用于配置 Linux 内核的防火墙。

2、进程管理:可以帮助我们更好地管理进程,提高系统的运行效率

  1. ps:显示当前系统中的进程信息,包括进程ID、进程状态、占用CPU、内存大小等。

  2. top:实时显示系统中占用CPU、内存最多的进程,并按照占用资源的多少进行排名。

  3. kill:终止指定进程。可以使用进程ID或者进程名称来终止进程。

  4. renice:重新调整进程的优先级。可以将进程的优先级调整为更高或更低。

  5. nice:设置进程的优先级。可以将进程的优先级设置为更高或更低。

  6. pkill:按照进程名称杀死进程。

  7. pgrep:按照进程名称查找进程ID。

3、文件管理:可以通过这些命令管理和操作系统中的文件和目录

  1. ls:列出当前目录下的文件和子目录。

  2. cd:切换当前目录。

  3. pwd:显示当前目录的路径。

  4. mkdir:创建一个新目录。

  5. rmdir:删除一个空目录。

  6. touch:创建一个新的空文件。

  7. rm:删除一个文件或目录。

  8. cp:复制一个文件或目录。

  9. mv:移动或重命名一个文件或目录。


栈和队列的区别

栈和队列是两种重要的数据结构,它们都可以用数组或链表实现。

栈(Stack)是一种先进后出(Last In First Out,LIFO)的数据结构。栈有两个基本操作:入栈(Push)和出栈(Pop)。入栈将元素压入栈顶,出栈将栈顶元素弹出。栈还有一个常用的操作是查看栈顶元素(Peek)。

Java中的栈可以使用java.util.Stack类来实现。Stack类的常用方法包括push()、pop()、peek()、empty()等。

队列(Queue)是一种先进先出(First In First Out,FIFO)的数据结构。队列有两个基本操作:入队(Add)和出队(Remove)。入队将元素加入队尾,出队将队首元素移除。队列还有一个常用的操作是查看队首元素(Peek)。

Java中的队列可以使用java.util.Queue接口来实现。Queue接口有很多子类,包括LinkedList、PriorityQueue等。Queue接口的常用方法包括add()、remove()、peek()、isEmpty()等。其中,LinkedList实现了Queue接口,并且还实现了Deque接口(双向队列)。Deque接口除了支持队列的操作,还支持栈的操作,例如push()、pop()、peek()等。

总之,栈和队列是常用的数据结构,在Java中有很多实现方式,可以根据具体的需求选择合适的实现方式。

数据结构:栈和队列(Stack & Queue)【详解】


堆栈,为什么用堆,不用栈

堆栈详解

一文详解堆栈(二)——内存堆与内存栈


栈在内存管理中的运用

基于栈和堆的内存管理机制


Socket的函数,bind是干嘛的

【计算机网络 23】Socket技术详解

简历上的项目(实现简易的git版本管理,init、add、reset、rm、commit、log、pull/push)

反问:面试官认为对于这个岗位,我还有什么需要掌握的地方

总结

基础知识准备的不充分,总体来说问题比较基础

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

花花橙子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值