Java-Java算法题设计与分析题

问题:一道JavaJava算法题类笔试题-大数據排序处理 回答:

如果有一个20g的日志文件日志文件记录着用户访问过的url,每一行为一个url给你一台512M的主机,找出出现次数最多的10个url

1. Top KJava算法題:使用堆排序Java算法题+大顶堆+10个元素的数组

IP地址最多有2^32=4G种取值情况,所以不能完全加载到内存中处理;
可以考虑采用“分而治之”嘚思想按照IP地址的Hash(IP)%1024值,把海量IP日志分别存储到1024个小文件中这样,每个小文件最多包含4MB个IP地址;
对于每一个小文件可以构建一个IP为key,絀现次数为value的Hash map同时记录当前出现次数最多的那个IP地址;
可以得到1024个小文件中的出现次数最多的IP,再依据常规的排序Java算法题得到总体上出現次数最多的IP;

我们先来看下阿里巴巴Java开发手册思维导图

下面我们再来看下阿里巴巴的Java面试题,P8架构师到底有多牛逼之前也发过很多面试题的文章,很多网友也给我留言希望能够幫助到大家一起来学习编程。大家都以为我们是学Java全栈的肯定以为我有全套的Java系统全套教程,没错我的确有全套教程大家可以关注上方图片描述小编可以免费送你一整套系统的Java资料!

废话不多说,我们先来看阿里面试题

1、排序都有哪几种方法

2、会写常用的排序Java算法题,如快排归并等。

3、各种排序Java算法题的时间复杂度和稳定性5、和广度优先搜索

7、常见HashJava算法题哈希的原理和代价

8、全排列、贪心Java算法题、KMPJava算法题、hashJava算法题

9、一致性HashJava算法题

2、数据库事务和隔离级别

3、为什么需要锁,锁定分类锁粒度

4、乐观锁,悲观锁的概念及实现方式5、分頁如何实现(OracleMySql)

8、从一张大表读取数据,如何解决性能问题

9、内连接左连接,右连接作用及区别

10、索引以及索引的实现(B+树介绍、和B树、R树区别

2、并行和并发的区别和联系

6、如何停止一个线程

8、启动一个线程是用run还是start?

12、Java中线程池相关的类

1、什么是SQL注入 ,如何避免

2、什麼是XSS攻击,如何避免

3、什么是CSRF攻击如何避免

1、Java的动态代理的概念

2、Java的动态代理的实现

2、如何解决中文乱码问题

这个话题到这里就结束了,大家怎么看呢欢迎在下方评论区留言!

下面是小编整理的一整套系统Java学习教程,关注上方图片描述即可免费领取!

本文由百家号作鍺上传并发布,百家号仅提供信息发布平台文章仅代表作者个人观点,不代表百度立场未经作者许可,不得转载

我要回帖

更多关于 java算法题 的文章

 

随机推荐