但是对于面试来说,一直都有一个说法就是「金三银四」现在三月份都快过完了,不知道有多少人已经拿到了offer,今天我就来分享一个Java程序员面试拼多多后端开发岗位的几轮面试题。

  很多Java程序员在面试时都有这样的苦衷:

  我掌握了很多Java开发技巧,每次到笔试环节,死活就是答不上;

  明明是一个职场老手,和面试官聊天,简单的技术问题都吞吞吐吐;

  一、拼多多一面

  1、给一个函数,返回 0 和 1,概率为 p 和 1-p,请你实现一个函数,使得返回 01 概率一样。

  2、10 亿个 url,每个 url 大小小于 56B,要求去重,内存 4G。

  3、把一个 bst 转化成一个双向链表。

  4、http 和 https 区别,https 在请求时额外的过程,https 是如何保证数据安全的。

  5、IP 地址子网划分。

  6、POST 和 GET 区别。

  7、硬链接和软连接区别。

  8、DNS 解析过程。

  9、kill 用法,某个进程杀不掉的原因(进入内核态,忽略 kill 信号)。

  10、linux 用过的命令。

  11、系统管理命令(如查看内存使用、网络情况)。

  12、管道的使用。

  13、grep 的使用,一定要掌握,每次都会问在文件中查找。

  14、shell 脚本。

  15、find 命令。

  16、awk 使用。

  二、拼多多二面

  1、Linux 下的一些指令,(进程id), (进程 id),(进程id),?(上一条命令退出时状态),怎么查看进程,按照内存大小,CPU 占用排序等等。(大写 M 和大写 P)。

  2、http 的 get 和 post 方法。

  3、介绍下你所了解的 epoll。

  4、数据库 sql 的了解程度。

  5、项目中遇到的问题,自己咋解决的等等。

  6、手写一个全排列。

7、B树和B+树。

  8、介绍一下 Hash,怎么解决冲突。

  9、进程间的通信,共享内存方式的优缺点。

  三、拼多多三面

  1、说下你平时看的一些技术博客,书籍。

  2、linux 下的一些指令。

  3、工作中你觉得最不爽的事情是什么。

  4、说下你的优缺点。

  5、有没有想过去创业公司。

  6、写个 strcpy 函数。

  7、说说你自己的性格。

  8、给你一个系统(面试官好像是无人车部门的),后台的逻辑已经实现了,但是前端加载很慢,怎么检测。

  9、以后可能要学习很多新技术,你怎么看。

  10、项目中遇到的困难(提前想好,并且把实现或者优化方法说清楚)。

  11、系统的量级、pv、uv 等。

  12、应对高并发的解决办法(分布式)。

  13、在项目中主要负责了哪些工作。

  14、nginx 的负载均衡。

  15、分布式缓存的一致性,服务器如何扩容(哈希环)。

给大家分享一款Java基础教程,帮助大家回顾一下上述知识点

尚学堂给同学们带来全新的Java300集课程啦!java零基础小白自学Java必备优质教程_手把手图解学习Java,让学习成为一种享受_哔哩哔哩_bilibili​www.bilibili.com/video/BV1qL411u7eE?spm_id_from=333.337.search-card.all.click​www.bilibili.com/video/BV1qL411u7eE?spicon-default.png?t=M3C8https://link.zhihu.com/?target=https%3A//www.bilibili.com/video/BV1qL411u7eE%3Fspm_id_from%3D333.337.search-card.all.click