• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

奋斗的软件工程师

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

采用LinkedList设计栈和队列

  • LinkedList集合的底层原理

  • 基于双链表实现的。

  • 特点:查询慢,增删相对较快,但对首尾元素进行增删改查的速度是极快的。

  • public void addFirst​(E e)

  • public void addLast​(E e)

  • public E getFirst​()

  • public E getLast​()

  • public E removeFirst​()

  • public E removeLast​()

点击查看代码
package com.itheima.javase;

import java.util.LinkedList;

/**
 * LinkedList集合的底层原理
 *
 * 基于双链表实现的。
 *
 * 特点:查询慢,增删相对较快,但对首尾元素进行增删改查的速度是极快的。
 *
 *public void addFirst​(E e)
 *
 * public void addLast​(E e)
 *
 * public E getFirst​()
 *
 * public E getLast​()
 *
 * public E removeFirst​()
 *
 * public E removeLast​()
 */

public class LinkedListDemo {
    public static void main(String[] args) {
        //队列: 先进先出 后进后出,排队有序入场-叫号系统
        LinkedList<Character> queue=new LinkedList<>();//不要用多态写,List集合用不了LinkedList集合特有的方法

        //入队,每次进入到队列的尾部
        for(char i='A';i<='Z';i++)
            queue.addLast(i);


        System.out.println(queue);

        //出队,每次都是从队列头部出列
        for (char i = 'A'; i <='Z' ; i++) {
            System.out.print(queue.removeFirst()+" ");
        }

        System.out.println("\n============================================================\n");

        //栈:先进后出,后进先出,压弹匣 栈顶 栈底 ,设计手枪弹夹
        LinkedList<Character> stack=new LinkedList<>();

        //进栈 压栈 push

        for(char i='A';i<='Z';i++)
            //stack.addFirst(i);
            stack.push(i);

        System.out.println(stack);

        //弹栈 出栈 pop

        for(char i='A';i<='Z';i++)
            //System.out.print(stack.removeFirst()+" ");

            System.out.print(stack.pop()+" ");


    }
}
[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z]
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 
============================================================

[Z, Y, X, W, V, U, T, S, R, Q, P, O, N, M, L, K, J, I, H, G, F, E, D, C, B, A]
Z Y X W V U T S R Q P O N M L K J I H G F E D C B A 

posted on 2024-01-30 22:34  周政然  阅读(16)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3