0
点赞
收藏
分享

微信扫一扫

单链表的创建--简单

文件结构:

单链表的创建--简单_结点

//Link.java
package LinkList_Node;
import java.util.Scanner;
public class Link
{
  static node head;
  static node t;
  public Link()
  {
    head=new node();
  }
  //以下是前插法;
  public void insertHead(int val)
  {
    node cur=new node(val); //新结点数据域
    cur.next=null; //新结点指针域
    cur.next=head.next; //新结点指向头结点的下一个
    head.next=cur; //头结点指向新结点
  }
  //以下是尾插法;
  public void insertTail(int val)
  {
    node tmp;
    node cur=new node(val);
    tmp=head;
    while(tmp.next!=null)
    {
      tmp=tmp.next;
    }
    tmp.next=cur;
    cur.next=null;
  }
  public static void menu()
  {
    System.out.println("1.单链表前插");
    System.out.println("2.单链表后插");
  }
  public static void main(String[] args)
  {
    menu();
    int a[]=new int[3];
    Link it=new Link();
    // while(true)
    // {
    System.out.print("请输入:");
    Scanner in=new Scanner(System.in);
    int num=in.nextInt();

    switch(num)
    {
    case 1:
    {
      for(int i=0;i<3;i++)
      {
        Scanner input=new Scanner(System.in);
        a[i]=input.nextInt();
        it.insertHead(a[i]);
      }
      break;
    }
    case 2:
    {
      for(int i=0;i<3;i++)
      {
        Scanner input=new Scanner(System.in);
        a[i]=input.nextInt();
        it.insertTail(a[i]);
      }
      break;
    }
    default:
    System.out.println("输入错误");
    break;
  }
  t=head; //t指向头结点
  for(int j=0;j<3;j++) //输出结点的值
  {
    System.out.print(t.next.data+" ");
    t=t.next;
  }
  // }
  }
}

运行结果: 

单链表的创建--简单_头结点_02

  

单链表的创建--简单_i++_03

 


举报

相关推荐

0 条评论