文档章节

阿里巴巴在线笔试题

weiliu007
 weiliu007
发布于 2016/09/21 16:37
字数 1369
阅读 315
收藏 3

1,写一个单例(延迟加载,高性能)

2,下面这个题目是答案

/**
     * 
     * @param pattern
     *            aabb
     * @param str
     *            北京 中国 北京 中国
     * @return
     */
    public boolean match(String pattern, String str) {
        assert pattern != null && pattern != "" && str != null && str != "";
        String strArr[] = str.split(" ");
        String patternArr[] = pattern.split("");
        if (patternArr.length != strArr.length)
            return false;
        StringBuilder result = new StringBuilder();
        Map<String, String> map = new HashMap<String, String>();
        for (int i = 0; i < strArr.length; i++) {
            map.put(strArr[i], patternArr[i]);
        }
        for (int i = 0; i < strArr.length; i++) {
            result.append(map.get(strArr[i]));
        }
        return pattern.equals(result.toString());
    }

3,实现阻塞锁,和非阻塞锁

 

----------------------------下面是电话面试题目--------------------------------------

 

  • HashMap和Hashtable的区别

  • 实现一个保证迭代顺序的HashMap

  • 说一说排序算法,稳定性,复杂度

  • 说一说GC

  • 职业规划

  • ---------------------------------------------------------------------------------------------------------------------

  • (1)自我介绍。

    (2)JVM如何加载一个类的过程,双亲委派模型中有哪些方法?

    (3)HashMap如何实现的?

    (4)HashMap和Concurrent HashMap区别, Concurrent HashMap 线程安全吗, Concurrent HashMap如何保证 线程安全?

    (5)HashMap和HashTable 区别,HashTable线程安全吗?

    (6)进程间通信有哪几种方式?

    (7)JVM分为哪些区,每一个区干吗的?

    (8)JVM如何GC,新生代,老年代,持久代,都存储哪些东西?

    (9)GC用的引用可达性分析算法中,哪些对象可作为GC Roots对象?

    (10)快速排序,过程,复杂度?

    (11)什么是二叉平衡树,如何插入节点,删除节点,说出关键步骤。

    (12)TCP如何保证可靠传输?三次握手过程?

    (13)TCP和UDP区别?

    (14)滑动窗口算法?

    (15)Linux下如何进行进程调度的?

    (16)Linux下你常用的命令有哪些?

    (17)操作系统什么情况下会死锁?

    (18)常用的hash算法有哪些?

    (19)什么是一致性哈希?

    (20)如何理解分布式锁?

    (21)数据库中的范式有哪些?

    (22)数据库中的索引的结构?什么情况下适合建索引?

    (23)Java中的NIO,BIO,AIO分别是什么?

    (24)用什么工具调试程序?JConsole,用过吗?

    (25)现在JVM中有一个线程挂起了,如何用工具查出原因?

    (26)线程同步与阻塞的关系?同步一定阻塞吗?阻塞一定同步吗?

    (27)同步和异步有什么区别?

    (28)线程池用过吗?

    (29)如何创建单例模式?说了双重检查,他说不是线程安全的。如何高效的创建一个线程安全的单例?

    (30)concurrent包下面,都用过什么?

    (31)常用的数据库有哪些?redis用过吗?

    (32)了解hadoop吗?说说hadoop的组件有哪些?hdfs,hive,hbase,zookeeper。说下mapreduce编程模型。

    (33)你知道的开源协议有哪些?

    (34)你知道的开源软件有哪些?

    (35)你最近在看的书有哪些?

    (36)你有什么问题要问我吗?

    (37)了解哪些设计模式?说说都用过哪些设计模式

    (38)如何判断一个单链表是否有环?

    (39)操作系统如何进行分页调度?

    (40)匿名内部类是什么?如何访问在其外面定义的变量?

  • -------------------------------------------------------------------------------------------------------------

1)自我介绍,做过什么项目。

(2)java虚拟机的区域如何划分,每一个区的动能,这一块自由发挥。

(3)双亲委派模型中,从顶层到底层,都是哪些类加载器,分别加载哪些类?

(4)有没有可能父类加载器和子类加载器,加载同一个类?如果加载同一个类,该使用哪一个类?

(5)HashMap的结构,get(),put()是如何实现的?HashMap有哪些问题?

(6)ConcurrentHashMap的get(),put(),又是如何实现的?ConcurrentHashMap有哪些问题? ConcurrentHashMap的锁是读锁还是写锁?

(7) HashMap与HashTable的区别

(8)sleep()和wait()分别是哪个类的方法,有什么区别?synchronized底层如何实现的?用在代码块和方法上有什么区别?

(9)什么是线程池?如果让你设计一个动态大小的线程池,如何设计,应该有哪些方法?

(10)什么是死锁?JVM线程死锁,你该如何判断是因为什么?如果用VisualVM,dump线程信息出来,会有哪些信息?这一块问的很多....问的我懵了. 因为并没有实际操作过 = =

(11)查看jvm虚拟机里面堆、线程的信息,你用过什么命令?我只用过图形界面VisualVM。。。

(12)垃圾回收算法有哪些?CMS知道吗?如何工作的?

(13)数据库中什么是事务?事务的隔离级别?事务的四个特性?什么是脏读,幻读,不可重复读?

(14)数据库索引的结构有哪些?我说B树和B+树,他说只有这两个吗。我又说全文倒排索引。然后介绍B+树的结构。

(15)数据库中的分页查询语句怎么写?

(16)什么是一致性哈希?用来解决什么问题?

(17)Redis的存储结构,或者说如何工作的,与mysql的区别?有哪些数据类型?

(18)项目中用到redis,为什么选用redis,了解其他NoSQL数据库吗?在你的项目中是如何运用redis的?key是什么,value是什么?

(19)归并排序的过程?时间复杂度?空间复杂度?

(20)你平常用什么排序?快速排序。说说在那些场景下适用,哪些场景下不适用。

(21)你在项目中做什么?因为我用到Solr,他就问我Solr是如何工作的?

 

 

© 著作权归作者所有

共有 人打赏支持
weiliu007
粉丝 15
博文 171
码字总数 84810
作品 0
深圳
程序员
私信 提问
90 道名企笔试和算法题 (含答题讨论)

(点击上方公众号,可快速关注) 节选自「算法爱好者」微信公号的精选算法题和名企笔试题。 问:如何获取题目列表? 答:① 长摁二维码关注「算法爱好者」,② 然后给它发送 名企笔试 或 算法...

Python开发者
2018/01/21
0
0
九月十月百度,迅雷,华为,阿里巴巴最新校招笔试面试二十题(10.12)

九月十月百度,迅雷,华为,阿里巴巴,最新校招笔试面试二十题 题记 本博客自2010年10月11日开通以来,已经帮助了一大批人找到工作,特别是连续三年在每一年的9、10月份陪伴了至少三届毕业生...

mickelfeng
2013/10/12
0
0
阿里巴巴校招笔试题,求思路。

今天做阿里巴巴实习生校招笔试附加题,没有思路,求大神指点 这题考察的是什么呢?求思路

ZhangFinder
2015/04/02
1K
5
秒杀多线程第一篇 多线程笔试面试题汇总

系列前言 本系列是本人参加微软亚洲研究院,腾讯研究院,迅雷面试时整理的,另外也加入一些其它IT公司如百度,阿里巴巴的笔试面试题目,因此具有很强的针对性。系列中不但会详细讲解多线程同...

晨曦之光
2012/05/21
270
0
秒杀多线程第一篇 多线程笔试面试题汇总

系列前言 本系列是本人参加微软亚洲研究院,腾讯研究院,迅雷面试时整理的,另外也加入一些其它IT公司如百度,阿里巴巴的笔试面试题目,因此具有很强的针对性。系列中不但会详细讲解多线程同...

彭博
2012/04/12
528
0

没有更多内容

加载失败,请刷新页面

加载更多

租房软件隐私保护如同虚设

近日,苏州市民赵先生向江苏新闻广播新闻热线025-84658888反映,他在“安居客”手机应用软件上浏览二手房信息,并且使用该软件自动生成的虚拟号码向当地一家中介公司进行咨询。可电话刚挂不久...

linux-tao
今天
1
0
分布式项目(五)iot-pgsql

书接上回,在Mapping server中,我们已经把数据都整理好了,现在利用postgresql存储历史数据。 iot-pgsql 构建iot-pgsql模块,这里我们写数据库为了性能考虑不在使用mybatis,换成spring jd...

lelinked
今天
4
0
一文分析java基础面试题中易出错考点

前言 这篇文章主要针对的是笔试题中出现的通过查看代码执行结果选择正确答案题材。 正式进入题目内容: 1、(单选题)下面代码的输出结果是什么? public class Base { private Strin...

一看就喷亏的小猿
今天
2
0
cocoapods 用法

cocoapods install pod install 更新本地已经install的仓库 更新所有的仓库 pod update --verbose --no-repo-update 更新制定的仓库 pod update ** --verbose --no-repo-update...

HOrange
今天
3
0
linux下socket编程实现一个服务器连接多个客户端

使用socekt通信一般步骤 1)服务器端:socker()建立套接字,绑定(bind)并监听(listen),用accept()等待客户端连接。 2)客户端:socker()建立套接字,连接(connect)服务器,连接上后...

shzwork
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部