学算法真的很痛苦,虽然大数据现在很火,但找到适合自己定位的职业也未尝不是一种合理选择。 投百度的经历非常坎坷,想写出来和大家分享一下,希望能带给和我一样准备不是非常充分(无对口项目、无实习经历、渣硕算法中途转Android开发)的同学一些信心。

百度一开始是想找学弟内推的,但是我投的比较早,赶上了内推的时间,但仍然走的是正式批的流程。做笔试题的时候,三道算法题只做出来第一道,之前经历了腾讯二面挂、字节笔试挂(补招的时候被捞一面挂)、京东笔试后没消息、美团简历挂,滴滴笔试完没消息(后来有面试并且收到了oc),觉得进面试拿到offer的希望也不大,所以就提前交卷,放弃挣扎了。最后意外收到了远程面试的邀请,运气到了拦也拦不住。

面试的时候除了算法题,其他被怼成弟弟,没想到面试官给过了,一天面完三面并且一周之后收到了oc,觉得自己非常的幸运,终于得到了大厂的认可(虽然是颗白菜)。这里建议网友如果有自己亮点的话,还是可以勇敢大胆的尝试一下大厂,毕竟除了实力之外,运气与机遇也占很大成分,遇到欣赏你的面试官,就会比较顺利。

献上百度的三面面经~

一面

1.项目介绍

2.智能指针, 分别解决什么问题, 如何实现(RAII)

3.TCP和UDP区别和联系

4.慢日志 -> explain -> SQL优化

把所有的索引结构说了一遍

线性->二分->Hash->BST->AVL->RB-Treee->B-Tree->B+Tree

时间复杂度 + 磁盘IO 两个角度

简述B+Tree结构, 设计优点.存储引擎

5.操作系统提供什么功能

几个子系统(进程管理/内存管理/文件/网络/设备 ), 分别实现什么功能

6.IO模型(虽然问的是IO多路复用, 但全说了一遍)

BIO / NIO / 信号驱动 / AIO / IO多路复用(select poll epoll), 简略的介绍一下原理;对比, 分别适合什么场景

7.中序和前序构建二叉树; N+1个数在1-N中, 找出重复元素O(1)空间,原数组const,

二面

1.项目介绍(对一个全栈项目比较感兴趣问的比较多, 不过没太大参考意义)

系统里设计时最重要的是什么(扯了高内聚低耦合), 项目难点(Server-Push, WSS, NGINX)

2.输入网址到看到页面的整个过程(尽可能的详细, 尽量把知道的协议都说一遍)

DNS(包括流程), UDP;HTTP(S), TCP, ARP, Ethernet, 分组交换;专业名词多来点, CDN, AJAX, DOM树

3.客户端卡顿可能是什么问题? 如何排查?

比较宽泛, 即可能是客户端的问题, 也可能是服务端的问题. 也可能是网络的问题, 也可能是处理器的问题, 等.

4.如果是服务端的问题, 如何考虑?

网络问题, 连接用户数过多, 导致每个人分配的带宽较少; 结束不活跃的连接, 减少长连接的使用, 调低超时时间.

处理器问题, 对应用户的线程迟迟无法占据CPU. 提高CPU性能, 或进行水平扩容等

中间件阻塞, 发生死锁, 或有慢查询存在.

5.知不知道crontab? 如何使用bash写一个脚本读取日志完成对IP的访问次数的排序

6.考虑转语言吗? 又扯了会前端 JavaScript

7.给出n对括号, 找出所有合法的组合

三面

1.全程怼项目

2.手写堆排序

3.手写归并算法

4.现在假设把这两个算法都封装成一个API,给你一个1PB的数据,但是内存只有2GB,设计一个工程调用这两个完成1PB数据的排序

有需要以上面试题答案的朋友,可以点击下方课程链接详细查看,想要《Android面试题汇总》的朋友也可以点击下方课程链接查看

https://edu.51cto.com/course/32703.html

第一章 Java方面

  • Java基础部分
  • Java集合
  • Java多线程
  • Java虚拟机

    2023年Android面经分享,大厂面经合集_Java

第二章 Android方面

  • Android四大组件相关
  • Android异步任务和消息机制
  • Android UI绘制相关
  • Android性能调优相关
  • Android中的IPC
  • Android系统SDK相关
  • 第三方框架分析
  • 综合技术
  • 数据结构方面
  • 设计模式
  • 计算机网络方面
  • Kotlin方面

    2023年Android面经分享,大厂面经合集_Java_02

第三章 音视频开发高频面试题

  • 为什么巨大的原始视频可以编码成很小的视频呢?这其中的技术是什么呢?
  • 怎么做到直播秒开优化?
  • 直方图在图像处理里面最重要的作用是什么?
  • 数字图像滤波有哪些方法?
  • 图像可以提取的特征有哪些?
  • 衡量图像重建好坏的标准有哪些?怎样计算?
  • ......

    2023年Android面经分享,大厂面经合集_百度_03

第四章 Flutter高频面试题

  • Dart部分
  • Flutter部分

    2023年Android面经分享,大厂面经合集_百度_04

第五章 算法高频面试题

  • 如何高效寻找素数
  • 如何运用二分查找算法
  • 如何高效解决雨水问题
  • 如何去除有序数组的重复元素
  • 如何高效进行模幂运算
  • 如何寻找最长回文子串
  • ....

    2023年Android面经分享,大厂面经合集_Android_05

第六章 Andrio Framework方面

  • 系统启动流程面试题解析
  • Binder面试题解析
  • Handler面试题解析
  • AMS面试题解析

    2023年Android面经分享,大厂面经合集_Java_06

第七章 企业常见174道面试题

  • SD卡
  • Android的数据存储方式
  • Broadcast Receiver
  • sp频繁操作会有什么后果?sp能存多少数据?
  • dvm与jvm的区别
  • ART
  • Activity的生命周期
  • Application能不能启动Activity
  • ....

    2023年Android面经分享,大厂面经合集_Java_07