腾讯大牛,手把手教你建立自己的Android学习知识体系,附实例+面经+建议!

主要让我介绍了我的项目,又出了几个题让我做。 项目就是让我介绍我科研做的那个流式二维码数据传输系统,我介绍的时候面试官听的很仔细,让我详细介绍了拍到的二维码是如何定位、采样和识别转换成二进制流的。然后问我传输速率是多少,我大概说了个数结果面试官拿笔在算怎么得到的,然后出了点岔子,传输速率就算是理论值都达不到我说的数,场面一度十分尴尬,不过还好我说后来我们用了彩色二维码,传输速率成倍提高了,他也就没有继续追究。

然后面试官问了我内网设备访问外网服务器的访问过程, 我就仔细解释了NAT的工作原理。然后问我假如现在有很多手机号,给出一个手机号如何能快速查找到这个手机号是否已经存在,我就用笔和纸仔细解释了Trie树;然后他问我为什么不直接用Hash,我又用笔和纸跟他详细说了Trie树相比Hash是如何节约空间的。

最后他问了我一个概率题, 大概就是三个蓝球一个红球求任意拿两个球只有一个红球的概率,初中的古典概型题;然而我当时脑袋抽风了竟然想不出来,就跟面试官说我穷举可不可以,他说能做出来就好,于是我就真开始穷举了,然后面试官就看不下去了,说你这么做要做到什么时候;不过在脑袋空白了几分钟后还是慢慢做出来了,有惊无险。最后他就问到了我拿到了哪些offer、女朋友在哪、想在哪里工作、介不介意去深圳的问题,我说我更想去上海(因为腾讯在上海有分公司),实在不行也能去深圳。

HR​

接着面试官就打电话给HR问后面的面试流程,听电话里大概意思是还有HR面,但HR明天才到南京。这时候我感觉二面也十拿九稳了,于是趁最后的机会直接问面试官说“不能今天就直接HR面吗”,面试官也老实回答说HR明天才到,安排你明天HR面。后来实习的时候,这个面试官就是我们的部门总监了,就是我leader的直接上级。

风平浪静中等到了第二天的HR面,让我见识到了套路可以玩的有多深。HR开始就跟我说,面试过程中可能她会看电脑敲键盘,但这并不代表她没听我说话,只是她在做面试记录而已。然后HR面开始,先自我介绍,然就就是问一些常规性的问题,比如生活中遇到的困难之类的。

然后问我知道腾讯的哪些产品,让我说出十几个,最后简直都要说的山穷水尽了。然后问我最近在看哪些书,我说在看设计模式,然后简单介绍了下说有十几种设计模式,对我写代码能力有很大帮助;然后她问我具体有多少种,我说12种吧,然后她就让我说出这12种!于是她步步紧逼,我绞尽脑汁想,也只说出了8种,最后她妥协了,说“那就认为你是真的看了的吧”。

然后问我有哪些offer,我说有网易游戏offer在路上了,她就问我怎么看待网易游戏的offer、杭州和深圳怎么考虑,我当然是夸奖了腾讯一番。然后她问我可不可以看看我的手机上有哪些APP,然后我把手机给她,她仔细滑仔细看,最后也没说啥(当时我手机上腾讯的APP似乎只有QQ和微信,网易家的倒挺多,但是没有游戏)。总之呢,当时的气氛真是难以形容,就像一眼就被HR看穿了,根本躲不了。最后问了HR说最早啥时候有结果,HR说要等大概两周,等全国的线路面试结束回深圳了才会作出决定。

小提示:其实很多人都比较在意技术面,其实HR面也是一个重点,毕竟工资能不能谈高一点,部门是不是自己合宜,你的为人处世,处理事情能力,人情世故!都会在HR面中体现出来!

我在这里准备了一份,大厂HR面试大全,希望可以帮助到大家,需要的可以查看我的交流地 【点击我,即可获得!】

进大厂所需知识点

看完我面试腾讯的经历,希望对你们能有帮助,现在我来总结一下大厂面试题所需知识点,和需要注意的一些情况!

知识点,我把他体系化了,做成了一张思维脑图,建议大家保存,收藏对照自己学习路线,进行学习查漏补缺,建立自己的知识体系,这是架构师的基础!

Android 面试题知识框架

大厂Android架构师筑基必备

包含知识点:1.深入 Java 泛型,2.注解深入浅出,3. 并发编程,4.数据传输与序列化,5. Java 虚拟机原理,6.反射与类加载,7.高效 IO

需注意
  • 腾讯笔试题倾向考察C/C++

无论投的是哪个岗位,腾讯的笔试题都会重点考察C/C++的知识,即使所投岗位不要求C/C++基础。

  • 不要被腾讯笔试题吓到

虽然腾讯笔试题考察C/C++很变态,但即使是编程题一个字都没写,也都有很大概率收到腾讯的面试通知。

  • 腾讯网申时“服从工作地点调剂”则很大可能分到深圳

腾讯虽然在北京、上海和成都等都有分公司,但岗位都比较少,而每年招聘的绝大部分岗位都在深圳,所以选择“服从工作地点调剂”的,很大可能分到深圳去。比如,南京离上海近,离深圳十万八千里,但也是有相当大概率分到深圳的。

  • 不要对实习转正后调换工作地点抱太大期望

实习转正后对应转正的岗位也是当前实习的岗位,即在当前组内,所以不太可能可以调换工作地点。如果坚持想要调换工作地点,可能需要按秋招流程重新来一遍。(腾讯是这么干的,但国内互联网公司大同小异)

  • 不要认为实习一定能转正

诸如阿里、腾讯和百度等公司的实习留用率肯定不是100%,所以不要怀着实习一定能拿到秋招offer的心态去实习。


万事俱备
  • 首先是关于面试岗位的问题。

虽然面试问到的问题五花八门,但很多问题都和面试的岗位关联性很大,比如应聘Android开发不会被问到Spring,应聘Java后台开发不会被问到Android。所以为了减少自己的工作量(也没那么多精力去同时准备不同岗位),就要先确定好自己要投的岗位。

然后就搜了不同岗位的面试经历帖子,看了看自己能答多少,发现自己对哪个岗位都不擅长,因为有一些Android开发基础,倒是会一点点Android开发相关的问题。接下来想了想虽然Android开发校招招的人少,但可能和我竞争的人更少,因为绝大部分同学都没接触过Android开发,所以就决定选择Android开发作为我以后要投的岗位了。


  • 接下来是关于面试题目的问题。

面试问的问题大概就是计算机基础、Java语言基础、Android开发和算法题了,下面展开来说,各个击破。

先说计算机基础题。计算机基础题是所有面试经历帖里面可以公用的,很快我就总结出来了规律:作为经历过考研的我,一眼就看出来计算机基础题基本都是考研知识点的题。比如,数据结构的二叉树、图、查找、排序章节就覆盖了众多数据结构相关的面试题,而计算机网络的存储器尤其是cache章节、虚拟存储器的段表和页表就完整覆盖了面试问到的cache相关的题,操作系统的进程管理算是面试经常问到的问题,而计算机网络相关的面试题肯定跑步出计算机网络教材。所以我就直接来了个自上而下的复习:买了本计算机专业课考研全书,从后到尾按顺序梳理可能的知识点然后整理出来。

再说Java语言基础。

因为Java存在数量巨大的程序员,所以很容易就能找到Java语言的面试题大全。但想要看完并记下这所有的面试题是个挑战,所以需要删掉一些一定不会被问到的面试题。Android开发除Java语言基础外并不会涉及到太多其他的Java套件,比如Java网络开发就肯定不会问到,这时就可以放心大胆把JDBC、JSP、Spring等砍掉,减少了许多工作。

然后是Android相关的面试题。

最开始看Android相关的面试经历帖一头雾水,觉得问的知识点太多了完全答不上来,但综合了十多个面试经历帖后发现问的很多问题都是重合的,比如经常问Activity的生命周期、Service的生命周期、Activity之间的通信、消息传递机制等。所以也采用类似复习Java语言的方法,收集各种各样的Android开发面试题。

最后还要说说一些其他的面试题

比较典型的是数据库和设计模式,因为Android开发问到数据库和设计模式的概率比较小,我也就只整理了一些简单的面试题,足够应付面试了。

以上这计算机基础、Java语言基础和Android开发面试题等的收集和整理工作就贯穿了我从实习招聘开始到秋招结束的始终,经常有新的题目被我收集到,也经常有老的题目被我整理得更加系统。为了更加方便和完整地收集和整理,我把整个收集整理过程都用Git来作了版本控制,并且分享在了GitHub上。

  • 需要相关知识点可以查看我的【GitHub】,对于已经掌握的可以忽略以节省时间。

下面说说算法题。

算法题可能并不是每轮面试都会出现,但一旦出现可能就是生死攸关的——做出来了面试通过,做不出来面试不通过。那么算法题该怎么准备呢?当然就是刷题啦,这里我选的就是知名刷题网站LeetCode了,而刷题顺序的话就是按通过率由高到低排序了一个个刷。

并且,我一开始就制定规则:每题都要使用Python、Java和C++三种语言做出来,因为Python适合在纸上手写、Java在在线写代码时常用、C++则是以备不时之需。刷题是一个很消耗时间的事情,但另一方面,刷题又是一个很好的利用碎片时间的方法——做出来一题可能只需要花十几分钟。另外,LeetCode里Easy、Medium和Hard的最后面几题总是会非常难,这时候就可以自己权衡还有没有刷这些题的必要啦,反正我是选择性放弃了。

刷题也贯穿了我实习招聘开始到秋招结束的始终,而刷题的主战场集中在三月初到六月底,这段时间几乎是有空就刷题,490+刷了400题左右;而接下来的七月初一直持续到秋招结束则主要在复习和整理刷过的题,在我的GitHub上也有记录。

最后

小编这些年深知大多数初中级Android工程师,想要提升自己,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助

因此我收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人

都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

资料⬅专栏获取
024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。**

[外链图片转存中…(img-nHvkMieh-1719115249559)]一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人

都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

资料⬅专栏获取

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/32609.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

stm32学习笔记---新建工程步骤和点灯演示

目录 STM32的三种开发方式 基于寄存器的方式 基于库函数的方式 基于Hal库的方式 固件库介绍 新建基于标准库的工程步骤 配置寄存器来完成点灯操作 添加库函数来完成点灯操作 添加库函数 开始点灯操作 第一步:使能时钟 第二步:配置端口模式 …

JVM专题六:JVM的内存模型

前面我们通过Java是如何编译、JVM的类加载机制、JVM类加载器与双亲委派机制等内容了解到了如何从我们编写的一个.Java 文件最终加载到JVM里的,今天我们就来剖析一下这个Java的‘中介平台’JVM里面到底长成啥样。 JVM的内存区域划分 Java虚拟机(JVM&…

使用 Ubuntu x86_64 平台交叉编译适用于 Linux aarch64(arm64) 平台的 QT5(包含OpenGL支持) 库

使用 Ubuntu AMD64 平台交叉编译适用于 Linux ARM64 平台的 QT5(包含 OpenGL/WebEngine 支持) 库 目录 使用 Ubuntu AMD64 平台交叉编译适用于 Linux ARM64 平台的 QT5(包含 OpenGL/WebEngine 支持) 库写在前面前期准备编译全流程1. 环境搭建2. 复制源码包并解压,创…

【Python机器学习】NMF——将NMF应用于人脸图像

将NMF应用于之前用过的Wild数据集中的Labeled Faces。NMF的主要参数是我们想要提取的分量个数。通常来说,这个数字要小于输入特征的个数(否则的话,将每个像素作为单独的分量就可以对数据进行解释)。 首先,观察分类个数…

细胞核的分割与分类模型·HoVer-Net|动手实操

小罗碎碎念 上一期推文已经介绍了hover net的背景和代码仓库情况,这一期则是根据作者提供的示例代码进行分析,详细你看完这一期推文,应该就能大致掌握这些套路了。如果觉得意犹未尽,那就等待下一期吧,哈哈。 一、编程…

Vue3 + TS + Antd + Pinia 从零搭建后台系统(四) ant-design-vue Layout布局,导航栏,标签页

书接上回本篇主要介绍: Layout布局,导航栏,标签页继续填充目录 按需引入组件Layout布局,导航栏,标签页css样式 按需引入组件 使用unplugin-vue-components插件完成ant-design-vue组件的按需加载。 前文中已处理过&…

运营管理和服务支撑阶段

我前面的所有设备都部署好了,现在就需要运营管理和服务支撑 遇到问题了迅速解决,避免风险扩大 我们也可以给客户提供上面的服务,提高客户的预警能力,安全风险处理能力 我们不仅提供设备,还提供服务 我们公司成立了安…

高考填报志愿选专业,要善于发掘自身优势

每年的高考季,如何填报志愿又再成为困扰家长以及学生的难题,可能在面对大量的专业时,无论是考生还是家长都不知道应该如何选择,好的专业孩子不一定有优势,感兴趣的冷门专业又担心日后找工作难。 实际上,专业…

React+TS前台项目实战(十六)-- 全局常用组件Pagination封装

文章目录 前言Pagination组件1. 功能分析2. 代码详细注释3. 使用方式4. 效果展示 [PC端&手机端] 总结 前言 在上篇文章中,我们封装了表格组件Table,本文则继续封装配套使用的分页器组件。想看Table表格组件的,可自行查看全局常用组件Tab…

QuantML-Qlib Model | Kansformer: KAN+Transformer时序模型用于股票收益率预测

QuantML-Qlib Model | Kansformer: KANTransformer时序模型用于股票收益率预测 原创 QuantML QuantML 2024-06-18 20:57 上海 Content 之前公众号介绍了几篇KAN的文章,也做过KAN相关的模型: What KAN I say?KAN代码全解析 Qu…

胖东来启示录:传统商超如何逆境求生?

近日,经过胖东来精心调改的永辉超市郑州信万广场店盛大开业,首日销售额高达188万元,客流量突破1.2万人,业绩飙升13.9倍,这一惊人数据无疑为当前低迷的传统商超行业带来了一线生机。胖东来,这位零售业的黑马…

java—类反射机制

简述 反射机制允许程序在执行期间借助于Reflection API取得任何类的内部信息(如成员变量,构造器,成员方法等),并能操作对象的属性及方法。反射机制在设计模式和框架底层都能用到。 类一旦加载,在堆中会产生…

Java程序之让气球上升

问题: ACM比赛时间再次举行!看到气球四处漂浮是多么的兴奋啊。但要告诉你一个秘密,评委们最喜欢的时间是猜测最流行的问题。比赛结束后,他们会数出每种颜色的气球,然后找到结果。今年,他们决定把这份可爱的…

【建设方案】基于gis地理信息的智慧巡检解决方案(源文件word)

传统的巡检采取人工记录的方式,该工作模式在生产中存在很大弊端,可能造成巡检不到位、操作失误、观察不仔细、历史问题难以追溯等现象,使得巡检数据不准确,设备故障隐患得不到及时发现和处理。因此建立一套完善的巡检管理系统是企…

Java程序之寻找自幂数

题目: 自幂数是指一个 n 位数(3≤n≤7 ),它的每个位上的数字的 n 次幂之和等于它本身(例如:1^3 5^3 3^3 153;1^46^43^44^41634)。三位自幂数:水仙花数;四位…

HeidiSQL导入与导出数据

HeidiSQL两种导入与导出数据的方法:整个库复制,和仅复制数据 一 整个库复制 1 选中需要导出的数据库(这里是MyDBdata),点击导出为SQL脚本。 2 按照如图进行选择 3 选做:删除当前数据库【如果有】 -- 删除数据库 USE mysql; D…

python-题库篇-Python语言特性

文章目录 Python语言特性1 Python的函数参数传递2 Python中的元类(metaclass)3 staticmethod和classmethod4 类变量和实例变量5 Python自省6 字典推导式7 Python中单下划线和双下划线8 字符串格式化:%和.format9 迭代器和生成器10 *args and **kwargs11 面向切面编程AOP和装饰器…

基于SpringBoot+大数据城市景观画像可视化设计和实现

💗博主介绍:✌全网粉丝10W,CSDN作者、博客专家、全栈领域优质创作者,博客之星、平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌💗 🌟文末获取源码数据库🌟 感兴趣的可以先收藏起来,…

C语言入门系列:初识函数

文章目录 一,C语言函数与数学函数的区别1,回忆杀-初中数学2,C语言中的函数 二, 函数的声明1,函数头1.1,函数名称1.2,返回值类型1.3,参数列表 2,函数体2.1,函数…

Android使用zxing生成二维码

效果图如下: **前提:导入zxing的jar后开始操作,老规矩最后有源码,作者布局默认相对布局。 第一步:定义二维码的长宽高及图片控件** 第二步:实例化QRCodeWriter后利用for循环将二维码画出来,然后…