最近又开始找工作了,(为毛是又呢,还不是因为之前随便就去了一家公司)
上面是背景,然后顺手整理了下最近一个星期的面试题
ps:为毛特么没有offer呢,你们都瞎了吗
1.ArrayList和LinkList的区别(被问到指数5星,几乎每个公司都会变着法子的问这个问题,我怀疑他们看的是同一个面试题库)
ArrayList是动态数组的数据机构,对于随机访问的get和set,ArrayList要优于LinkList,因为LinkList要移动指针
LinkList是基于链表的数据结构,对于add和insert操作,LinkList要优于ArrayList,因为ArrayList要移动数据
然而你以为就这样就完了吗!!!
问:请问在平均5次操作其中有4次需要查询1次需要新增的情况下,用哪一种数据结构会比较好呢?
答:。。。。。。。(exm?)
2.hashmap的数据结构
hashmap实际上是一个数组和链表的结合体,hashmap根据键值对存储数据,若key的hashcode值重复,则用链表的方式将数据
放在数组的next里面。
3.bigDecimal
1).往往用于商业计算
2).尽量使用参数类型为String的构造函数
3).BigDecimal都是不可变的,在进行每一步的计算时,都会产生一个新的对象所以在做加减乘除运算时要保存操作后的值
4.分布式和集群之间的区别
分布式是指在多台不同的服务器中部署不同的服务模块,通过远程调用协同工作,对外提供服务。
集群是指在多台不同的服务器中部署相同的应用和服务模块,构成一个集群,通过负载均衡设备对外提供服务。
分布式系统是一个硬件和软件分布在不同的网络计算机上,彼此之间仅仅通过消息传递进行通信和协调的系统
分布性:
透明性:系统资源被所有计算机共享
同一性:系统中的若干计算机可以互相协作来完成一个共同的任务
通信性:任意两台计算机都可以通过通信来交换信息
5.数据库的优化
http://blog.csdn.net/axin66ok/article/details/7891386
网友评论