码迷,mamicode.com
首页 > 编程语言 > 详细

JAVA中数据结构总结

时间:2018-06-27 18:54:19      阅读:136      评论:0      收藏:0      [点我收藏+]

标签:val   linked   队列   top   com   link   png   操作   pop   

本篇文章主要总结一下JAVA中实现的几种数据结构

 技术分享图片技术分享图片

 

简述:

 List<?>:链表结构。通常情况下只会用到ArrayList和LinkedList,Vector和Stack的功能都可以用List进行实现,后面将不再进行介绍。

Queue<?>:队列,只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。

Map<?,?>:用于存放键值对数据,键值对存储在Entry<?, ?>,不能存储重复的key值,相同的key值时,后面的value覆盖前面的value,key值允许为空。

Set<?>:由Map封装实现,结构特性和Map一致,但是只能存储单对象。

 

涉及到的数据结构:

栈:提供压栈(push)和出栈(pop)功能

队列:提供offer和pull的非阻塞方法,put和take的阻塞方法

链表:提供添加、查找、移除、遍历等各种函数

树:红黑树,通常用来做随机查找,取Top N或排序等功能

 

线程安全性

Queue、HashTable、ConcurrentHashMap是线程安全的,其余都是不安全的,后面新开一遍介绍Java的锁,将会深入讲解。

 

时间复杂度

 技术分享图片

未完待续

JAVA中数据结构总结

标签:val   linked   队列   top   com   link   png   操作   pop   

原文地址:https://www.cnblogs.com/kooker/p/9229935.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!