0
点赞
收藏
分享

微信扫一扫

第六章总结

yeamy 2022-04-06 阅读 142
java

第六周总结

课堂总结

课后总结

创建单链表

package qing;
import Nodes.Nodes;
public class qingLinkedlist//链表类
{
	public Nodes first;//标记头结点
	public Nodes last;//表记尾节点
	public int size;//纪录链表长度
	public qingLinkedlist()//无参构造链表
	{
		first  = null;
		last = null;
	}
	public void show()//打印链表函数
	{
		Nodes f = first;
		if(f==null)
			System.out.println("链表已清空!");
		while(f!=null)
		{
			System.out.println(f.data+"    "+f.name);
			f = f.next;
		}
	}public void addFirst(int data, String name)//在头部添加结点(头插法)
	{
		Nodes xin = new Nodes(data,name);//创建新的结点
		if(first==null&&last == null)//判断是否有头节点
		{
			xin.next = last;
			first= xin;//有则直接赋值为头结点
			last = xin;
			size = 1;//长度增加
		}
		else 
		{
			xin.next = first;//无则先将之前的头节点赋值为下一个节点
			first = xin;//在将这个新节点赋值为头结点
			size++;//长度增加
		}
	}
	public void addLast(int data, String name)//尾部添加节点(尾插法)
	{
		Nodes xin = new Nodes(data ,name);
		{
			if(first==null&&last == null)//没有尾结点的时候添加尾结点
			{
				last = xin;
				first = xin;
				size = 1;
			}
			else 
			{
				last.next = xin;
				last = xin;
				size++;
			}
		}
	}
package Nodes;//节点类
public class Nodes
{
	public int data;
	public String name;
	public Nodes next = null;//指针,指向下一个节点
	public Nodes(){}//一定要记得自写无参构造
	public Nodes(int data,String name)//有参构造赋值
	{
		this.data = data;
		this.name = name;
	}
}
import Nodes.Nodes;
import java.util.*;
import qing.qingLinkedlist;
public class Test//测试类
{
	public static void main(String[] args)
	{
		Scanner in = new Scanner(System.in);
		qingLinkedlist mylist = new qingLinkedlist();//创建空链表
		System.out.println("请输入指令:1-添加头节点,2-添加尾结点,3-打印链表,100-退出");
		int zl=0;//用指令进行对应操作
		zl = in.nextInt();
		int data=0;
		String name = null;
		while(zl!=100)
		{
			if(zl==1||zl==2)
			{
				System.out.println("请输入数据:年龄 姓名");
				data = in.nextInt();
				name = in.nextLine();
			}
			if(zl==1)
			{
				mylist.addFirst(data,name);//头插法操作
			}
			if(zl==2)
			{
				mylist.addLast(data,name);//尾插法操作
			}
			if(zl==3)
			{
				mylist.show();//打印链表
			}
			if(zl==4)
			{
				mylist.clear();//清除链表
			}
			if(zl==5)
			{
				System.out.println("链表长度为"+mylist.size());//打印链表长度
			}
			System.out.println("请输入指令:1-添加头节点,2-添加尾结点,3-打印链表,4-清除链表,5-显示长度,100-退出");
			zl = in.nextInt();
		}
	}
}

运行结果

在这里插入图片描述

举报

相关推荐

java第六章总结

PTA第六章

第六章 BOM

第六章 容器

第六章:接口

第六章 初识MyBatis

第六章 字典(3)

0 条评论