数据结构图
集合类图
.容器中装的都是对象,因为它要把对象放到堆上面,但是1.5后就可以自动包装
map.put("one",new Integer(1))
1.5后可以 map.put("one",1);
List
有序的、可重复的、按索引位置排序 (这点类似于数组)
实现类
ArrayList 数组实现
1. 代表长度可变的数组
2. 允许对元素进行快速的随机访问(根据索引进行访问)
3. 向ArrayList中插入和删除元素的速度较慢,需要移动大量的元素
LinkedList 双向链表实现
1. 插入和删除元素的速度较快(不需要移动元素)
2. 随机访问的速度相对较慢,随机访问的含义是根据索引定位特定位置的元素
3. 提供addFirst(0 addLast() getFirst() get拉斯特() removeFirst()和removeLast()方法,使LinkedList可以作为堆栈,队列和双向队列使用
Set
无序的、不可重复的、
实现类
HashSet 哈希算法实现、底层是HashMap实现,用到了key的部分。
1. 按照哈希算法存取集合中的对象,具有很好的存取和查找性能
2. 当向集合中加入一个对象时,Hashset会调用对象的hashCode()方法获得哈希码,然后根据哈希码进一步计算对象在集合中的存放位置
3. 在Java.lang.Object中定义了hashCode()和equals()方法,在最原始的Object中定义的equals()方法是按照内存地址比较对象是否相等,因此对于Object而言,如果equals方法的结果为true,则说明两个引用实际上引用相同的对象,这两个引用的哈希码必然也相同
为保证HashSet能够正常工作,要求两个对象用equals()方法比较的结果为true时,他们的哈希码也相同
如果用户定义的类覆盖了Object的equals方法而没有覆盖hashCode方法,会导致当equals方法结果为true时,对象的哈希码并不相同,这样会使hashSet无法正常工作,用户本意是作为同一个对象引用处理,但是由于没有覆盖hashCode()方法,导致哈希码不同,hashSet将作为不同对象处理。
SortedSet
排序的set
实现类
TreeSet,在HashSet的基础上维护了一个双向链表,
1. 排序的依据对象实现实现了Comparable接口,或者是构造时传入Comparator比较器。像Integer,Double和String他们自己都实现了Compareble接口
Map
Key 唯一的,key不可重复的。Value可重复。
实现类
HashMap
SortedMap
TreeSet基于TreeMap实现,支持排序
TreeSet是非线程安全的
相关推荐
数据结构-集合运算 数据结构-集合运算全文共16页,当前为第1页。数据结构-集合运算全文共16页,当前为第1页。 数据结构-集合运算全文共16页,当前为第1页。 数据结构-集合运算全文共16页,当前为第1页。 合肥工业...
介绍数据结构队集合(Set)的概念、特点、优缺点、适用场景和Java示例代码
Go中各种数据结构和算法的实现。
(5)集合结构、线性结构、树形结构、图状结构:数据结构可以分为集合结构、线性结构、树形结构、图状结构等多种类型,每种结构都有其特点和应用场景。 (6)顺序存储、非顺序存储:数据结构可以采用顺序存储和非...
数据结构实验-集合的并交差运算实验报告.doc
对半搜索 内容提要 6.1 集合的表示 (a)集合结构 (b)线性结构 (c)树形结构 (d)图结构 图1.2 四种基本的逻辑结构 1.集合 (1)基本概念 集合:在数学上,集合是不同对象的无序汇集。 例如:集合{1,2,3}与{3,2,1}相同。...
数据结构(C语言版)实验报告-集合的交并差.docx数据结构(C语言版)实验报告-集合的交并差.docx数据结构(C语言版)实验报告-集合的交并差.docx数据结构(C语言版)实验报告-集合的交并差.docx数据结构(C语言版)实验报告-...
06 Python数据结构-元组与集合.pptx
C++ 数据结构算法集合 C++ 数据结构算法集合 C++ 数据结构算法集合 C++ 数据结构算法集合 C++ 数据结构算法集合 C++ 数据结构算法集合 C++ 数据结构算法集合 C++ 数据结构算法集合 C++ 数据结构算法集合 C++ 数据...
【测试数据】 (1)Set1="magazine",Set2="paper", Set1∪Set2="aegimnprz",Setl ∩Set2="ae",Set1-Set2="gimnz"。 (2)Set1= " 012oper4a6tion89",Set2="error data", Set1∪Set2="adeinoprt",Setl ∩Set2=...
Python数据结构:介绍Python中常用的数据结构,包括列表、元组、字典、集合等,以及它们的特点、使用方法、操作等。 3. 算法基础知识:介绍算法的基本概念、分类、特点等内容,包括排序、查找、递归、分治等。 4. ...
数据结构--树与森林--思维导图 数据结构是计算机科学中的一门基础学科,它研究数据的逻辑结构、存储结构和访问方式。树和森林是数据结构中的两个重要概念,本篇文章将对其进行详细的讲解。 一、树的定义 树是一种...
数据结构、算法相关的资源 数据结构、算法相关的资源 数据结构、算法相关的资源 数据结构、算法相关的资源 数据结构、算法相关的资源 数据结构、算法相关的资源 数据结构、算法相关的资源 数据结构、算法相关的资源 ...
图 2016 《数据结构》 数据结构-图的存储表示全文共28页,当前为第1页。 图的概念和操作 图的存储:邻接矩阵,邻接表 图的遍历:宽度优先,深度优先 生成树:DFS 生成树,BFS 生成树 最小生成树:Prim 算法,Kruskal...
初步完成总体设计,搭好框架,确定人机对话的界面,确定函数个数; 10个元素的集合的合并、求交集操作。
【数据结构】数据结构 【数据结构】数据结构-图的基本概念 图的基本概念 图的简介 图(Graph)结构是⼀种⾮线性的数据结构,图在实际⽣活中有很多例⼦,⽐如交通运输⽹,地铁⽹络,社交⽹络,计算机中的状态执⾏ ...
数据结构试验报告-集合的交并差.doc
数据结构的集合的并、交和差运算。 数据结构的集合的并、交和差运算。