校招——面试(Android岗)总结
PS:持续更新,未完待续
2016.8.24某为面试
- 自我介绍一下
链表和数组的区别
数组的存储空间是静态、连续分布的,初始化过大会造成空间浪费,过小会使空间溢出;链表的存储空间是动态分布的,只要内存有剩余空间,便不会产生溢出。
数组查询比较快(可以根据下标直接查询),但是插入和删除比较慢;链表查询比较慢,但是插入和删除比较快(可以直接改变链表的指针)。
多个.c文件到二进制文件,这个过程中编译器做了哪几阶段的工作
C源程序→预编译处理(.c)→编译、优化程序→汇编程序(Windows下是.obj)→链接程序。
大致是这个步骤,详细的也不是很了解,暂时不做深究了。
可执行的二进制文件加载到内存中,程序里面分哪几个步骤
这个可能是让说java的程序的工作原理,下面先给一张java工作流程图。

- Java源程序在编译之后生成后缀名为“.class”的文件,该文件以字节码(bytecode)的方式进行编码。这种字节码实际上是一种伪代码,它包含各种与平台无关的指令。Java虚拟机在字节码文件的的基础上解释这些字节码,将这些字节码转化成本地计算机的机器代码,并交给计算机去执行。
- Java虚拟机执行字节码的过程由一个循环组成,它不停地加载程序,然后进行合法性和安全性检测,以及解释执行,直到程序执行完毕。
- 二叉树的遍历
先序遍历,中序遍历,后序遍历。
PS:我记得当时懵逼了,直接回答的深度优先遍历,广度优先遍历。(囧,这是图的遍历好不啦) - 程序和进程的区别
程序只是一个静态的指令集合。而进程是一个正在系统中活动的指令集合,即进程中加入了时间的概念。进程具有自己的生命周期和各种不同的状态,这些概念在程序中都是不具备的。 死锁产生的原因,如何避免死锁
死锁是指多个进程等待它方占有的资源而无限期地僵持下去的局面。
产生死锁的原因
- 系统资源不足
- 进程运行推进的顺序不合理
- 资源分配不当
产生死锁的四个必要条件:(必须同时具备才会产生死锁)
互斥条件
即某个资源在一段时间内只能由一个进程占有,不能同时被两个或两个以上的进程占有。
不可抢占条件
进程所获得的资源在未使用完之前,申请资源者不能强行地从资源占有者手中夺取资源,而只能由该资源的占有者进程自行释放。
占有且申请条件
进程至少已经占有一个资源,但又申请新的资源;由于该资源已被另外进程占有,此时该进程阻塞;但是,它在等待新资源之时,仍继续占用已占有的资源。
循环等待条件
存在一个进程等待序列{P1,P2,…,Pn},其中P1等待P2所占用的某一资源,P2等待P3所占用的某一资源,…形成一个进程循环等待环。
如何解决死锁
有序的资源分配
你在项目中具体实现了哪些功能
你觉得你的项目中有哪些难点
- 你觉得自己的优势是什么
2016.9.8某宁面试
- 你做的项目用的什么框架
- Android的四大组件
- Activity的生命周期
- 我当前正在运行一个程序,然后我按了电源键,请问Activity经过了哪些生命周期?
- 广播有几种注册方式,动态注册的步骤是什么
- 计算机网络里通用的七层模型
- 网络协议,通信协议(模型和协议的对应关系)
- TCP和UDP协议的区别
- 链表的排序和算法(你知道哪些排序算法)
- 冒泡排序的算法实现
- 冒泡排序和二分法排序哪个效率高?
- Java中封装的概念
- Java中多态的概念,多态是用什么实现啊的实现啊的
校招——面试(Android岗)总结的更多相关文章
- 知名互联网公司校招 Java 开发岗面试知识点解析
天之道,损有余而补不足,是故虚胜实,不足胜有余. 本文作者在一年之内参加过多场面试,应聘岗位均为 Java 开发方向.在不断的面试中,分类总结了 Java 开发岗位面试中的一些知识点. 主要包括以下几 ...
- 腾讯面试Android高级岗,居然被一个多线程基础面倒了?
前言 一个在深圳从事开发五年的老友一个月前从原公司辞职后,昨天去腾讯总部面试Android高级岗,一面的时候,自我介绍后,陆陆续续问了很多问题,有着五年的从业经验很多项目开发的技术问题都回答的很通顺, ...
- 墙裂推荐!2020Android阿里&腾讯&百度&字节&美团校招面试汇总
基本情况 2021届硕士生,Android开发岗 此文主要是2020年年初春招实习的面试和正式校招面试经验汇总,最终校招拿到了腾讯,百度,美团等offer 主要包括阿里4面,腾讯实习4面和校招4面,字 ...
- 记2016腾讯 TST 校招面试经历,电面、笔试写代码、技术面、hr面,共5轮
(出处:http://www.cnblogs.com/linguanh/) 前序: 距离 2016 腾讯 TST 校招面试结束已经5天了,3月27日至今,目前还在等待消息.从投简历到两轮电面,再到被 ...
- 2020腾讯Android岗初级到高级面试真题收录解析
前言 马上就要到金九银十面试季了,需要找工作的小伙伴可以开始刷题复习了. 今天给大家分享的是博主腾讯面试的面经以及对腾讯2020上半年Android开发岗面经真题收录,希望可以帮助到大家,喜欢的朋友可 ...
- 安卓开发视频教程!想找工作的你还不看这份资料就晚了!Android校招面试指南
前言 准备面试其实已经准备了挺久了,当时打算面试准备了差不多以后,跟公司谈谈涨薪的事情,谈不拢的话,就年后直接找其他的公司.谁想到婚假还没休完,老板就在公司宣布了撤出上海的决定,愿意去深圳的就去,不愿 ...
- 大厂Android岗高频面试问题:说说你对Zygote的理解!
前言 Zygote可以说是Android开发面试很高频的一道问题,但总有小伙伴在回答这道问题总不能让面试满意, 在这你就要搞清楚面试问你对Zygote的理解时,面试官最想听到的和其实想问的应该是哪些? ...
- 2020年最新阿里、字节、腾讯、京东等一线大厂高频面试(Android岗)真题合集,面试轻松无压力
本文涵盖了阿里巴巴.腾讯.字节跳动.京东.华为等大厂的Android面试真题,不管你是要面试大厂还是普通的互联网公司,这些面试题对你肯定是有帮助的,毕竟大厂一定是行发展的标杆,很多公司的面试官同样会研 ...
- 近期面试Android的一些面试题
近期一个多月面试过一下公司(均为实习): 腾讯:内推一面卒. 正式校招拿到offer 阿里:内推二面卒. 蘑菇街:面完三面技术面,等待HR面 网易:拿到offer. 能够看到,大部分问题不难,可是能回 ...
随机推荐
- 小迪安全 Web安全 基础入门 - 第二天 - Web应用&架构搭建&漏洞&HTTP数据包&代理服务器
一.网站搭建 1.域名.是由一串用点分隔的字符组成的互联网上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位.域名可以说是一个IP地址的代称,目的是为了便于记忆后者. 2.子域名.在 ...
- IDEA配置连接(自建Maven仓库)私服并打包上传
maven的setting.xml文件配置 在servers标签里配置 <server> <id>privete_maven</id> <!--账号密码需要与 ...
- docker启动redis报错 oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
docker启动redis报错 1:C 17 Jun 08:18:04.613 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo1:C 17 Jun 08 ...
- 【LeetCode】856. Score of Parentheses 解题报告(Python & C++)
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 栈 递归 计数 日期 题目地址:https://le ...
- hdu 4503 湫湫系列故事——植树节(组合概率)
这是一道求组合的题.中文题面应该能看懂,废话不多说下面来说说这道题. 可以选的总组合数是Ck3 那么选到3个人的关系都相同,要么都认识,要么都不认识.可以重反面来考虑,就是求三个人的关系不都相同. 那 ...
- Mysql 层级无限嵌套
1.新建测试数据 新建channel表 DROP TABLE IF EXISTS channel; CREATE TABLE channel ( id INT(11) NOT NULL AUTO_IN ...
- Chapter 4 Effect Modification
目录 4.1 Definition of effect modification 4.2 Stratification to identify effect modification 4.3 Why ...
- ROC and AUC
目录 概 TPR, FPR ROC and AUC 代码 ROC-wiki 概 AUC常常在文章中作为评价一个分类器优劣的指标, 却总是忘记其原由, 索性记上一笔. TPR, FPR 首先理解TP, ...
- 向setup.py里添加自定义command
向setup.py里添加自定义command 参考这里 继承distutils.cmd.Command类: class CCleanCommand(distutils.cmd.Command): &q ...
- 贪心学院计算机视觉CV训练营
贪心学院计算机视觉CV训练营 任务 Notes 其他 任务1:机器学习.深度学习简介 Note1 任务2:深度学习的发展历史 Note2 任务3:现代深度学习的典型例子 Note3 任务4:深度学习在 ...