字节跳动—测试开发实习生-广告系统面经

一面:

Tcp和udp的区别

网络传输协议

TCP 安全 三次四次 传输慢 顺序到达 有错误检测 适用于敏感数据传输 、高可靠性

UDP 传输快 丢包率高 安全性不高 不保证顺序 适用于不敏感的信息传播、实时性

输入一个抖音.com,ip地址解析失败是什么原因

域名错误 本地dns无法解析域名 网络连接问题 防火墙阻止dns请求 地区限制(可使用vpn)

Dns解析的详细过程

域名-》IP地址

1 浏览器检查本地是否缓存了对应的ip地址

2如果没有 浏览器检查本地hosts文件和dns缓存是否有ip地址

3上述缓存都没有的情况下 dns开始查询

4dns首先查询根域名-》顶级域-》权威域名服务器

5权威域名服务器返回IP地址给dns 浏览器获得ip地址后 发出https请求 建立连接 加载页面

操作系统问了复制和粘贴的实现

操作系统管理剪贴板时,通常会使用内存缓冲区。每当执行复制或剪切操作时,剪贴板会在内存中为数据分配空间。数据可以以不同的格式存在(例如文本、图像、文件路径等)。在粘贴时,系统会根据数据的格式将其传递给目标应用。

算法题:不同路径

class Solution:

    def uniquePathsWithObstacles(self, obstacleGrid: List[List[int]]) -> int:

        # dp[i][j] 00-ij的路径数量

        # dp[i][j] = dp[i-1][j] + dp[i][j-1]

        m,n=len(obstacleGrid),len(obstacleGrid[0])

        # 特殊情况

        # 初始化dp

        # 填充dp

        if obstacleGrid[0][0]==1 or obstacleGrid[m-1][n-1]==1:

            return 0

        dp=[[0]*n for _ in range(m)]

       

        dp[0][0]=1

        for i in range(1,m):

            if obstacleGrid[i][0]==0:

                dp[i][0]=dp[i-1][0]

       

        for j in range(1,n):

            if obstacleGrid[0][j]==0:

                dp[0][j]=dp[0][j-1]

       

        for i in range(1,m):

            for j in range(1,n):

                if obstacleGrid[i][j]==0:

                    dp[i][j]=dp[i-1][j]+dp[i][j-1]

       

        return dp[m-1][n-1]

提问:问面试官负责什么工作内容,什么时候出结果

二面:(40min)2022.3.7

简单聊了一下实习,问我实习是不是自己找的,有没有做过测试开发相关的工作

端口查询命令netstategrep

查找文件命令find

1. 查找端口的命令

在操作系统中,可以使用以下命令来查询和管理端口。

Linux/Mac 系统:

  • 查看某个端口是否被占用(netstat):

netstat -tuln | grep <端口号>

  • 这条命令可以查看正在监听的端口,-t 表示显示 TCP 连接,-u 表示显示 UDP 连接,-l 显示监听的端口,-n 显示数字格式的 IP 地址和端口。
  • 查看某个端口的占用情况(lsof):

lsof -i :<端口号>

  • 该命令可以显示指定端口被哪个进程占用。
  • 查看端口占用进程及 PID(ss):

ss -tuln | grep <端口号>

  • ss 是比 netstat 更快速的替代工具,显示网络连接信息。

2. 查找文件的命令

Linux/Mac 系统:

  • 查找指定文件(find):find 命令可以根据指定的路径和文件名来查找文件。可以使用通配符(如 *)来进行模糊查询。
  • 查找文件包含的内容(grep):grep 命令可以查找文件中的内容,-r 表示递归搜索。
  • 查找文件的详细信息(locate):locate 使用系统索引查找文件,比 find 更加快速(需要事先更新数据库,通常是通过 updatedb)。
  • 查找文件的类型(file):file 命令会显示文件的类型,如文本文件、二进制文件等。

算法题:气象(要求两种解法,第二种要求O(n))

有没有遇到什么挫折,怎么解决的

能实习多久

然后闲扯

提问:测试开发需要提高哪里能力

问题定位能力(测试) 逻辑思考的全面性、细致性(测试 开发代码)

三面(50min)2022.3.17

1自我介绍

2为什么做测试开发

3你做测试开发有什么优势

4仔细介绍实习和研究生的两个项目,我的主要贡献是什么

 5代码:反转链表 

如果是环形链表,会发生什么问题,会输出什么

6测试用例:微信朋友圈测试用例

功能 点赞刷新评论发表删除好友限制 UI 性能 响应时间 并发操作 兼容 不同机型 pc 安全 网络攻击 敏感pyq识别处理

全部评论
前端咋面起测开来了
点赞 回复 分享
发布于 02-16 02:16 广东

相关推荐

04-28 17:58
门头沟学院 Java
查看15道真题和解析
点赞 评论 收藏
分享
头像 会员标识
05-20 22:38
已编辑
南京理工大学 Java
45min提问1.&nbsp;讲一下你实习时候这个项目的大概业务流程2.&nbsp;二级缓存怎么设计的,像二维码的同时核销的并发,在你这个缓存里效果是怎么样的(感觉他没问清楚..)3.&nbsp;提到Jmeter,怎么设计线程组,用了多少个线程组,使用多少个并发请求4.&nbsp;Jmeter是在本地还是服务器部署,讲一下你使用的过程5.&nbsp;Jmeter本地跑一万个线程能跑起来吗(问Jmeter的瓶颈)6.&nbsp;布隆过滤器怎么实现的,原理,效果7.&nbsp;Redis是单机部署还是分布式部署,为什么不用分布式(因为实习的公司只要单机阿..)8.&nbsp;Redis常用数据结构,List和Set的区别,存商品id用哪个9.&nbsp;缓存的过期机制如何设计的,设计随机过期机制的作用10.&nbsp;缓存读写策略,多个服务节点对Redis操作怎么办11.&nbsp;大key或者热点key会导致什么问题,如何解决12.&nbsp;Redis哨兵机制13.&nbsp;数据库锁的类别14.&nbsp;数据库事务的隔离级别,幻读的现象15.&nbsp;优惠券秒杀,如何测试(界面,功能,兼容,安全等..)16.&nbsp;Netty核心组件了解吗,作用分别是什么17.&nbsp;NIO和BIO区别18.&nbsp;Bootstrap/ServerBootstrap的区别19.&nbsp;Netty的长连接和心跳监听20.&nbsp;TCP沾包问题的解决21.&nbsp;拿到一个慢sql,如何分析定位问题22.&nbsp;索引失效的情况,数据的类型和大小影响索引的功能吗23.&nbsp;回表查询24.&nbsp;MySQL日志了解哪些,他们的功能25.&nbsp;介绍bin&nbsp;log26.&nbsp;为什么主从数据同步不用redo&nbsp;log&nbsp;要用bin&nbsp;log手撕:链表相交的结点(10min)用常规的指针遍历(到尾节点就跳到另一条链表)让我回去思考一下再优化时间复杂度反问..感觉一面面了别人两面的量,应该凉了
查看26道真题和解析 面试问题记录
点赞 评论 收藏
分享
评论
4
43
分享

创作者周榜

更多
牛客网
牛客企业服务