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();
全部评论

相关推荐

11-04 10:30
已编辑
门头沟学院 研发工程师
开心小狗🐶:“直接说答案”
点赞 评论 收藏
分享
来,说点可能被同行“骂”的大实话。🙊当初接数字马力Offer时,朋友都说:“蚂蚁的“内包”公司?你想清楚啊!”但入职快一年后的今天,我反而对他有了不一样的看法!🔹 是偏见?还是信息差!之前没入职之前外面都在说什么岗位低人一等这类。实际上:这种情况不可至否,不能保证每个团队都是其乐融融。但我在的部门以及我了解的周边同事都还是十分好相处的~和蚂蚁师兄师姐之间也经常开一些小玩笑。总之:身份是蚂蚁公司给的,地位是自己挣的(一个傲娇女孩的自述)。🔹 待遇?玩的就是真实!试用期工资全额发!六点下班跑得快(早9晚6或者早10晚7,动态打卡),公积金顶格交。别听那些画饼的,到手的钱和下班的时间才是真的(都是牛马何必难为牛马)。🔹 能不能学到技术?来了就“后悔”!我们拥有权限直通蚂蚁知识库,技术栈多到学不完。说“学不到东西”的人,来了可能后悔——后悔来晚了(哈哈哈哈,可以不学但是不能没有)!💥 内推地址:https://app.mokahr.com/su/ueoyhg❗我的内推码:NTA6Nvs走我的内推,可以直达业务部门,面试流程更快速,进度可查!今天新放HC,之前挂过也能再战!秋招已经正式开始啦~机会就摆在这,敢不敢来试一试呢?(和我一样,做个勇敢的女孩)
下午吃泡馍:数字马力的薪资一般哇,5年经验的java/测试就给人一万出头,而且刚入职第三天就让人出差,而且是出半年
帮你内推|数字马力 校招
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务