java中常用的数据结构

  1. PriorityQueue优先队列
    //定义优先队列的比较器
     Comparator<String> cmp;
     cmp = new Comparator<String>() {  
     @Override
     public int compare(String o1, String o2) {
         // TODO Auto-generated method stub
         return o1.val-o2.val;
     }
     };
     //建立队列
     PriorityQueue<String> q = new PriorityQueue<String>(cmp);
        ArrayList<Integer> result = new ArrayList<>();
        for(int i = 0; i < numbers.length; i++){
            result.add(numbers[i]);
        }
        Collections.sort(result, new Comparator<Integer>(){
            public int compare(Integer a, Integer b){
                String s1 = a+""+b;
                String s2 = b+""+a;
                return s1.compareTo(s2);
            }
        });
  1. peek() //返回队首元素
  2. poll() //返回队首元素,队首元素出队列
  3. add() //添加元素
  4. offer() //添加元素
  5. size() // 返回队列元素个数
  6. isEmpty() // 判断队列是否为空, 为空返回true, 不空返回false
    1. Queue队列
    Queue<String> queue = new LinkedList<String>();
    offer()、poll()、peek()
    获取头元素的方法
    1. 获取并移除
    poll()   获取并移除此队列的头,如果此队列为空,则返回 null
    remove()  获取并移除此队列的头,如果此队列为空,则抛出NoSuchElementException异常
    1. 获取但不移除
    peek()  获取队列的头但不移除此队列的头。如果此队列为空,则返回 null
    element()  获取队列的头但不移除此队列的头。如果此队列为空,则将抛出NoSuchElementException异常
    1. 添加元素的方法
    offer()  将指定的元素插入此队列(如果立即可行且不会违反容量限制),插入成功返回 true;否则返回 false。当使用有容量限制的队列时,offer方法通常要优于 add方法——add方法可能无法插入元素,而只是抛出一个 IllegalStateException异常
    add()  将指定的元素插入此队列
    1. Stack
    import java.util.Stack
    push()、pop()、peek()、empty()
    1. ArrayList 动态数组
      ![图片说明](https://uploadfiles.nowcoder.com/images/20200309/128682809_1583737628962_C69F2426466D337F09C74E2B2F26755A "图片标题")
      contains();
      size();
    2. LinkedList 双向链表数组
      ![图片说明](https://uploadfiles.nowcoder.com/images/20200309/128682809_1583737914978_FE189B44F25B61E308C4B92E74C99141 "图片标题")
    3. StringBuilder常用方法
  7. append(String str)/append(Char c);
  8. toString();
  9. setCharAt(int i, char c);
  10. length();
  11. charAt();
全部评论

相关推荐

Natrium_:这时间我以为飞机票
点赞 评论 收藏
分享
头像
11-09 17:30
门头沟学院 Java
TYUT太摆金星:我也是,好几个华为的社招找我了
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务