字节跳动面试

字节跳动面试
一面.

  1. 考察互联网的相关内容,TCP/IP 五层协议,HTTP/HTTPS协议内容,包括点击网页后的所有操作。GET/POST的区别。TCP和UDP,三次握手/四次握手。(这些在牛客网上经常会问的,多看面经);
  2. 代码:字符串回旋,判断两个字符串是否是回旋,例如abcd,bcda是一个回旋字符,方法是,abcdabcd连起来,然后判断bcda是否是abcdabcd的子串即可;
  3. 怎么设计上个代码的测试例程。

二面:

  1. 考察编程语言的基础知识,指针int (*p)[10]和int *p[10]的区别;
    . 考察操作系统的知识,堆和栈的区别,多进程/多线程的区别,线程同步的方法;static关键字修饰的作用(全局和局部分别有哪些作用);select/epoll;静态编译和动态编译
  2. 代码:考察了将单链表的每K个节点之间逆序
    给定一个单链表,实现一个调整单链表的函数,使得每 K 个节点之间的值逆序,如果最后不够 K 个节点一组,则不调整最后几个节点。。例如1 2 3 4 5 ,K=3 最后链长若小于3则不翻转,输出 为32145;(思路:可以先顺序访问K个节点,然后存到数组中,然后利用数组,翻转。)
  3. 场景:对于微信的随机红包如何设计测试例程。

转发自:字节跳动面试_牛客网