校招——面试(Android岗)总结
2024-10-16 05:20:35
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中多态的概念,多态是用什么实现啊的实现啊的
最新文章
- 一鼓作气 博客--第五篇 note5
- 使用替换shader渲染
- Bootstrap页面布局22 - BS工具提示
- Codeforces Round #298 (Div. 2) B. Covered Path
- Flex 4 不同主题下容器子元素的管理方法
- Class.forName(";com.mysql.jdbc.Driver";);的作用
- Linux驱动的两种加载方式过程分析
- 基本SQL练习题--选课经典例题
- 写了交互给后台后来不能用?bug多多多又找不到文件效率低?工作流程帮你优化起来~~~~
- 会话Cookie及session的关系(Cookie &; Session)
- C# App.config配置文件的讲解
- 修真院java后端工程师学习课程--任务1(day four)
- [codility] Lession1 - Iterations - BinaryGap
- python正则表达式判断素数【厉害了】
- 【cf842C】 Ilya And The Tree(dfs、枚举因子)
- MSSQL SQL Server代理 作业 设置(调用存储过程)
- 查看指定spid的脚本当前运行情况和状态
- MFC 常用功能总结
- Windows 7 incorrectly reports ";No Internet Access";
- 【commons】Bean工具类——commons-beanutils之BeanUtils
热门文章
- LuoguP1619 解一元二次方程的烦恼 题解
- CF658A Bear and Reverse Radewoosh 题解
- CF1560D Make a Power of Two 题解
- CF1492A Three swimmers 题解
- 【九度OJ】题目1040:Prime Number 解题报告
- 【九度OJ】题目1080:进制转换 解题报告
- 【LeetCode】449. Serialize and Deserialize BST 解题报告(Python)
- 【LeetCode】559. Maximum Depth of N-ary Tree 解题报告(Python)
- Chapter 7 Confounding
- vue项目在ie浏览器下报语法错误