2016/07/24 面试题汇总

把自己遇到和网上看到的一写面试题汇总了一下,帮助梳理和学习一些知识点。

一. 算法

1.1 排序

1) 时间复杂度

参考 算法排序

2) 快速排序

参考 快速排序

3) 冒泡排序

参考 冒泡排序

4) 选择排序

参考 选择排序

1.2 查找

1) 二分查找

参考 二分查找

1.3 树

1) 二叉树

参考 二叉树

2) 红黑树

二. Java 基础

2.1 nio

2.2 线程

1) 线程有几种状态?

参考 线程的状态

2) 线程的优先级

Java 线程的优先级有10种,从1到10,默认为5。Java 线程的优先级具有继承性。

2.3 JVM

2.4 集合

1) HashMap 工作原理

参考 HashMap 的工作原理

2) ConcurrentHashMap原理

参考 HashMap 的工作原理

3) 某公司正在做一个寻找走失儿童的公益项目,现在有一个函数,可以输入两个图片,并返回这个儿童是否重复。请你设计一个系统,帮助他们寻找儿童。

网友可以同时上传一批图片
系统能够把所有图片分类并归为一组
网友上传图片后,网页要尽快返回该照片所在的组。

A:假设你现在有一个机器,请写出你的数据结构与处理流程,设计的思路。
B:如果你有多台机器,如果缩短请求的时间?

三. 设计模式

1) 单例模式

参考 单例模式

四. 大数据

五. Linux