java实现队列-链表存储
2021/10/31 11:12:35
本文主要是介绍java实现队列-链表存储,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
创建一个节点类
/** * @author * @create 86153-2021 */ public class Node { public int age; public String name; Node next; public Node(int age, String name) { this.age = age; this.name = name; } public Node() { } @Override public String toString() { return "Node{" + "age=" + age + ", name='" + name + '\'' + '}'; } }
创建链表
/** * @author * @create 86153-2021 */ public class NodeList { Node font; Node rear; private int size; /** * 创建一个队列,在对象生成的时候就开始创建 */ public NodeList() { font=rear=null; } /** * 判断队列是否为空 * @return */ public boolean isEmpty(){ return((rear==null&font==null)?true:false); } /** * 进入队列 * @param node */ public void enList(Node node){ if(isEmpty()){ font=rear=node; }else{ rear.next=node; rear=node; } size++; } /** * 出队列 * @return */ public String deList(){ if(isEmpty()){ return "llll"; } Node p; p=font; font=p.next; p.next=null; size--; if(size==0){ font=rear; }else { } return p.toString(); } /** * 测试代码 * @param args */ public static void main(String[] args) { NodeList l1=new NodeList(); Node a1=new Node(3,"sss"); Node a2=new Node(4,"dfds"); Node a3=new Node(5,"werfwefrwe"); Node a4=new Node(6,"sferfserfserfserfesrf"); l1.enList(a1); l1.enList(a2); l1.enList(a3); l1.enList(a4); System.out.println(l1.size); System.out.println(l1.deList()); System.out.println(l1.deList()); System.out.println(l1.deList()); } }
总结
1.判断队列是否为空时:rear和font都为空时,队列才为空。
2.在列添加第一个元素时:头指针和尾指针要指向同一个元素(没有头结点的队列);
这篇关于java实现队列-链表存储的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-02Java管理系统项目实战入门教程
- 2024-11-02Java监控系统项目实战教程
- 2024-11-02Java就业项目项目实战:从入门到初级工程师的必备技能
- 2024-11-02Java全端项目实战入门教程
- 2024-11-02Java全栈项目实战:从入门到初级应用
- 2024-11-02Java日志系统项目实战:初学者完全指南
- 2024-11-02Java微服务系统项目实战入门教程
- 2024-11-02Java微服务项目实战:新手入门指南
- 2024-11-02Java项目实战:新手入门教程
- 2024-11-02Java小程序项目实战:从入门到简单应用