博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
android 面试总结,后续注意学习
阅读量:6252 次
发布时间:2019-06-22

本文共 827 字,大约阅读时间需要 2 分钟。

1、数据结构和算法
一般情况下,工作中是用不到的,但是就是问,每个公司都问,而且有的公司还问的特别深,还让你手写代码。我觉得这个确实有点恶心,我个人也是很讨厌算法的,但是真是没办法,人家就问,你说怎么办?只能学呗。列个表,大家可以按照下面的去学习。不要一下看完,你看完也没用,你没有深入理解。每三天学一种,半年后,我觉得你应该会进步很多。然后可以看看“编程之美”等算法书,应该会有较大的提高。
常见的数据结构
线性:数组、链表、队列、堆栈、块状数组(数组+链表)
、hash表、双端队列、位图(bitmap)
树:堆(大顶堆、小顶堆),trie树(字母树or字典树),后缀树,后缀数组,二叉排序/查找树,B+/B-/B*,AVL树,Treap,红黑树,splay树,线段树,树状数组
图:图
其它:并查集
常见算法
1)基本思想:枚举,递归,分治,模拟,贪心,动态规划,剪枝,回溯
2)图算法:深度优先遍历与广度优先遍历,最短路径,最小生成树,拓扑排序
3)字符串算法:字符串查找,hash算法,KMP算法
4)排序算法:冒泡、快排、桶排序
5)动态规划:背包问题,最长公共子序列,最优二分检索树
6)数论问题:素数问题,整数问题,进制转换,同余模运算
7)排列组合:排序和组合算法
8)其它:LCA与RMQ问题

2.网络层
HTTP协议、TCP/IP协议,这个在Android的面试中问的比较少,但是了解一下,或者你学的比较深入,优势就比较明显了。会是你的加分点。所以,系统并且深入的学习一下就非常有必要了。

 

3.Android的基础
这个肯定是必须的了,比如listview优化、UI特效的实现、数据库层的搭建、JNI的使用等等。

 

4.注意一些面试细节
1)为什么离职?
2)对薪水的期望值
3)手机记得静音或者关机
4)表达能力的提高

转载于:https://www.cnblogs.com/yingfeng_love/p/3621286.html

你可能感兴趣的文章
Arduino入门之前
查看>>
JavaWeb学习----JSP简介及入门(含Eclipse for Java EE及Tomcat的配置)
查看>>
zoj 1904 Beavergnaw 计算圆柱和圆台的体积
查看>>
整理了一份招PHP高级工程师的面试题(转)
查看>>
Document对象中的一些重要的属性和方法(笔记)
查看>>
学习Raft算法的笔记
查看>>
[LeetCode]题解(python):053-Maximum Subarray
查看>>
SharePoint中的用户信息和检索的有关知识
查看>>
Linux系统在启动过程中grub引导文件丢失的解决方法
查看>>
day15-JavaScript条件语句和函数的定义
查看>>
使用acl网络通信库的 redis c++ 模块开发 redis 应用
查看>>
Geek的入门神器:micropython-能跑python的stm32开发板
查看>>
利用脚本获取mysql的tps,qps等状态信息
查看>>
Python Json数据排序
查看>>
[原创] zabbix学习之旅七:如何远程操作被监控机器
查看>>
第十一周编程总结
查看>>
PhoneURLConnectGEt
查看>>
darknet源码学习
查看>>
dl,dt,dd的用法
查看>>
外面的世界很精彩,然而等待你的人却可能已不在
查看>>