zoukankan      html  css  js  c++  java
  • java的常用数据结构

    Java中有几种常用的数据结构,主要分为Collection和map两个主要接口(接口只提供方法,并不提供实现),而程序中最终使用的数据结构是继承自这些接口的数据结构类。

    ---

    1. Collection: 又有两大类set,list。

    - list(相当于普通数组,元素可重复):基本的三类

       1 ArrayList: 元素单个,效率高,多用于查询,底层结构数组,有序。 

       2 LinkedList:元素单个,多用于插入和删除,底层结构双向链表,有序。

       3 Vector: 元素单个,线程安全,多用于查询,底层结构数组,有序。

       4 Stack:栈,先进后出
       
    - set(数学意义上的集合,元素不可重复):

      1 HashSet:HashSet的底层实际上是由HashMap实现的。其四个构造函数分别对应相应的HashMap。
      
      2 TreeSet:其中的元素按照升序排列,缺省是按照自然顺序进行排序,意味着TreeSet中的元素要实现Comparable接口,或者有一个自定义的比较器Comparator。底层数据结构红黑树。
      
    2.Map(存储键值对,key唯一):

       1 HashMap:继承于AbstractMap,实现了Map、Cloneable、java.io.Serializable接口。HashMap 的实现不是同步的,这意味着它不是线程安全的,无序且值不唯一。
       
       2 TresMap:是一个有序的key-value集合,它是通过红黑树实现的。有序,不安全,值也不唯一。
       
       3 ConcurrentHashMap:线程安全的,使用的锁分段技术。

    主要的数据结构

    数据结构之间的对比

  • 相关阅读:
    15 手写数字识别-小数据集
    14 深度学习-卷积
    13-垃圾邮件分类2
    12.朴素贝叶斯-垃圾邮件分类
    11.分类与监督学习,朴素贝叶斯分类算法
    9、主成分分析
    7.逻辑回归实践
    8.特征选择,过滤式
    6.逻辑回归
    5.线性回归算法
  • 原文地址:https://www.cnblogs.com/horken/p/10706144.html
Copyright © 2011-2022 走看看