java数据结构面试题有哪些?java数据结构面试题及答案

Java面试过程中,经常会被问到数据结构相关的知识,因为这些在实际工作中经常遇见,所以要求面试人员必须掌握好相关知识,那java数据结构面试题有哪些?下面来我们就来给大家讲解一下java数据结构面试题及答案。

1.什么是数据结构?

简单地说,数据结构是以某种特定的布局方式存储数据的容器。这种“布局方式”决定了数据结构对于某些操作是高效的,而对于其他操作则是低效的。首先我们需要理解各种数据结构,才能在处理实际问题时选取最合适的数据结构。

2.为什么我们需要数据结构?

数据是计算机科学当中最关键的实体,而数据结构则可以将数据以某种组织形式存储,因此,数据结构的价值不言而喻。

无论你以何种方式解决何种问题,你都需要处理数据——无论是涉及员工薪水、股票价格、购物清单,还是只是简单的电话簿问题。

数据需要根据不同的场景,按照特定的格式进行存储。有很多数据结构能够满足以不同格式存储数据的需求。

3.常用数据结构有哪些?

集合,线性结构(数组,队列,链表和栈),树形结构,图状结构。

4. HashMap和Hashtable的区别是什么?

HashMap和Hashtable都实现了Map接口,并且都是key-value的数据结构。它们的不同点主要在三个方面:

第一,Hashtable是Java1.1的一个类,它基于陈旧的Dictionary类。而HashMap是Java1.2引进的Map接口的一个实现。

第二,Hashtable是线程安全的,也就是说是线程同步的,而HashMap是线程不安全的。也就是说在单线程环境下应该用HashMap,这样效率更高。

第三,HashMap允许将null值作为key或value,但Hashtable不允许(会抛出NullPointerException)。

5.基本类型变量都放在栈内存中?变量

错。应该这样说:全部局部变量都放在栈内存里保存的,无论其是基本类型的变量,仍是引用类型变量,都是存储在各自的方法栈区中;可是引用类型变量所引用的对象(包括数组、普通java对象)则老是存储在堆内存中。

对于面试前还是有必要临时抱抱佛脚的,看看相关面试题也是可以帮助大家增加面试通关率的哦!最后大家如果想要了解更多Java面试题知识,敬请关注奇Q工具网。

推荐阅读:

json格式怎么使用?json字符串如何转换为json对象?

java架构师怎么报名?如何通过Java架构师考试?

JAVA接口怎么实现?JAVA接口与类有区别吗?