ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Android开发三年月薪才12K,算法题 JVM

2021-07-11 22:55:53  阅读:205  来源: 互联网

标签:BC% 12K 分片 JVM E4% Android 多线程 ###


### 第二层 面试官对我的偷鸡取巧并不满意啊,他需要我提速,这个速度不行啊。 What??是有时间复杂度更低的吗?不不不,这是一道核心竟然是一道多线程的题目。 1. 将10亿的数据分片,通过分治的思维对数据进行第一次处理。 2. 开启多线程然后对其进行这些分片的数据进行优先级队列操作。 3. 然后每个子线程筛选出其中最大的k个数 4. 当所有线程执行完毕之后合并数据 ### 我猜测的第三层 1. 是不是考虑下多少个数据一分片,然后如何把效能提升到最高的问题? 2. 构建多少个线程读取效率是最高的? 这个都是我没想到的,各位大佬有想法的可以聊一下啊。 # 题二:一篇文章内的单词数量 这题乍一看卧槽貌似不难,foreach循环碰到一个空格或者标点的情况下sum++,是不是就可以解决这个问题。 然而事情并没有想想的这么简单。面试被问到这种问题最难的是什么,可能是对于这题目真实的边界问题的思考。 1. 如果这篇文章内容很大怎么办,会不会把内存吃光? 2. 如何给单词去除重复? ### 是不是可以考虑逐行读取呢? 将其转化成IO流,逐行读取流,之后对这个输入内容进行一次计数操作,是不是就可以解决这个问题呢。 ### 单词重复的问题 卧槽,这个真简单HashSet啊!!!!那么如果海量数据我是不是又炸了? 卧槽,死亡螺旋吗。或许我们可以考虑下用hash的方式来解决,只保留单词的hashcode,是不是可能可以解决呢。 ### 同样的这个也可以使用多线程分片去优化 方式的话基本也和上面是完全一样的,只要把数据分片,之后多线程调度,然后合并结果就可以了。 ## 总结 **【Android 详细知识点思维脑图(技能树)】** > ![](http://www.icode9.com/i/li/?n=2&i=images/20210711/1626012635933431.jpg) 我个人是做Android开发,已经有十来年了,目前在某创业公司任职CTO兼系统架构师。虽然 Android 没有前几年火热了,已经过去了会四大组件就能找到高薪职位的时代了。这只能说明 Android 中级以下的岗位饱和了,**现在高级工程师还是比较缺少的**,很多高级职位给的薪资真的特别高(钱多也不一定能找到合适的),所以努力让自己成为高级工程师才是最重要的。 > 这里附上上述的面试题相关的几十套字节跳动,京东,小米,腾讯、头条、阿里、美团等公司19年的面试题。把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节。 由于篇幅有限,这里以图片的形式给大家展示一小部分。 >![](http://www.icode9.com/i/li/?n=2&i=images/20210711/1626012635359002.jpg) 详细整理在GitHub可以见; **[Android架构视频+BAT面试专题PDF+学习笔记](https://github.com/a120464/Android-P7/blob/master/Android%E5%BC%80%E5%8F%91%E4%B8%8D%E4%BC%9A%E8%BF%99%E4%BA%9B%EF%BC%9F%E5%A6%82%E4%BD%95%E9%9D%A2%E8%AF%95%E6%8B%BF%E9%AB%98%E8%96%AA%EF%BC%81.md)** 网上学习 Android的资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。希望这份系统化的技术体系对大家有一个方向参考。 最后,赠与大家一句话,共勉!

标签:BC%,12K,分片,JVM,E4%,Android,多线程,###
来源: https://blog.51cto.com/u_15297690/3036705

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有