- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第13章常见数据结构的Java实现13.1链表13.2栈13.3树集13.4树映射.ppt
第13章 常见数据结构的Java实现 13.1 链表 13.2 栈 13.3 树集 13.4 树映射 13.5 散列集 13.6 散列表 13.7 向量 13.1 链表 链表是由若干个称作节点的对象组成的一种数据结构,每个节点含有一个数据和下一个节点的引用(单链表),或含有一个数据并含有上一个节点的引用和下一个节点的引用(双链表)。 LinkedList类中的常用方法 public boolean add(Object element) 向链表末尾添加一个新的节点,该节点中的数据是参数elememt指定的对象。 public void add(int index ,Object element) 向链表的指定位置添加一个新的节点,该节点中的数据是参数elememt指定的对象。 public void addFirst(Object element) 向链表的头添加新节点,该节点中的数据是参数elememt指定的对象的引用。 public void addLast(Object element) 向链表的末尾添加新节点,该节点中的数据是参数elememt指定的对象。 public void clear() 删除链表的所有节点,使当前链表成为空链表。 public Object remove(int index) 删除指定位置上的节点。 public boolean remove(Object element) 删除首次出现含有数据elemen的节点。 public Object removeFirst() 删除第一个节点,并返回这个节点中的对象。 public Object removeLast() 删除最后一个节点对象,并返回这个节点中的对象。 public Object get(int index) 得到链表中指定位置处节点中的对象。 public Object getFirst() 得到链表中第一个节点中的对象。 public Object getLast() 得到链表中最后一个节点中的对象 遍历链表 链表对象可以使用iterator()方法获取一个Iterator对象,Iterator对象中每个数据成员刚好是链表节点中的数据,而且这些数据成员是按顺序存放在Iterator对象中的。Iterator对象使用next()方法可以得到它中的数据成员。显然,使用Iterator对象遍历链表要比链表使用get方法遍历链表的速度快。 13.2 栈 栈是一种“后进先出”的数据结构,只能在一端进行输入或输出数据的操作。栈把第一个放入该栈的数据放在最底下,而把后续放入的数据放在已有数据的顶上。向栈中输入数据的操作称为“压栈”,从栈中输出数据的操作称为“弹栈”。 栈对象可以使用 public Object push(Object data); 输入数据,实现压栈操作. 使用 public Object pop(); 输出数据,实现弹栈操作。 使用 public boolean empty(); 判断栈是否还有数据,有数据返回false ,否则返回true。 13.3 树集 树集是一些节点组成的数据结构,节点按着树形一层一层的排列 . TreeSet来创建一个树集 ,和链表不同的是,用add 方法增加节点时,节点会按其存放的数据的“大小”一层一层地依次排列,在同一层中的节点从左到右递增排列,下一层的都比上一层的小。 节点对象必须实现Comparable接口,以便树集比较节点对象的大小关系 . 14.4 树映射 TreeMap类实现了Map接口,称TreeMap对象为树映射。树映射使用 public Object put(Object key,Object value) 方法添加节点,该节点不仅存储着数据value,而且也存储着和其关联的关键字key,也就是说,树映射的节点存储“关键字/值”对。和树集不同的是,树映射保证节点是按照节点中的关键字升序排列。 13.5 散列集 HashSet类实现了Set接口,可以使用构造方法HashSet()创建散列集,例如 HashSet set= HashSet(); set可以调用add(Object o)方法将对象添加到集合中,添加到集合中的数据称做集合的元素。集合不允许有相同的元素,也就是说,如果对象b已经是集合中的元素,那么再执行set.add(b)操作是无效的。 13.6 散列表 散列表是使用相关关键字查找被存储的数据项的一种数据结构,关键字不可以发生逻辑冲突,即不要两个数据项使用相同的关键字,如果出现两个数据项对应相同的关键字,那么,先前散列表中的数据项将被替换。 13.7向量 J
您可能关注的文档
- 电子技术_第14章_二极管和晶体管.ppt
- 电子教案25.ppt
- 电子数据提取及过程审计系统BitSureI-爱思网安.doc
- 电子电工专业教学指导方案.ppt-峨眉职业技术学校.ppt
- 电子病历系统应用分级解读_2013.5.26印刷.ppt
- 电脑与资讯科技(会考课程)核心单元第一部分.ppt
- 电脑与资讯科技(会考课程)核心单元第四部分.ppt
- 电脑应用-blog.hongai.edu.hk.doc
- 电脑程式的重制.ppt
- 电脑设备领取归还规章制度.doc
- 【九牧王公司供应链管理的优化研究7000字】.doc
- 【ST电能资产重组案例分析】5600字.docx
- 【劲仔食品公司应收账款管理问题与优化浅析】9800字.doc
- 【铜陵新航道旅行包公司的财务风险防范的案例分析】8300字.docx
- 【恒顺醋业公司融资倾向存在的问题及解决对策】开题报告(文献综述)6100字.doc
- 【恒顺醋业公司实施全面预算管理的成效及其经验分析】5600字.doc
- 【海尔集团并购红星审计风险及应对策略研究】9800字.docx
- 【济南联通公司人才流失问题研究】3900字.docx
- 【九牧王公司股利政策分析5600字】.docx
- 【济南联通公司人才流失问题与对策】8500字.doc
文档评论(0)