Java数据结构:单链表

    技术2024-06-23  75

    //单链表:学生信息管理 public class Dome_3 { public static void main(String[] args) { // TODO Auto-generated method stub Student s1 = new Student(1,"男","小明"); Student s2 = new Student(2,"女","小红"); Student s3 = new Student(3,"男","小刚"); Student s4 = new Student(4,"男","小犊子"); List1 l = new List1(); l.add(s1); l.add(s2); l.add(s3); l.add(s4); l.show(); } } class List1{ //初始化 Student student = new Student(0,"",""); //插入数据,采取尾插法 //思路:1,找到最后一个节点;2,让最后一个节点的next指向插入的数据的地址 public void add(Student s) { Student temp = student;//因为头指针不能动,动了后面就没法操作这个链表了 while(true) { if(temp.next == null) { break; } temp = temp.next;//指针后移 } temp.next = s; } //遍历整个链表 public void show() { if(student == null) { System.out.println("单链表为空"); return; } Student temp = student.next; while(true) { if(temp == null) { break; } temp.show();//打印单个节点 temp = temp.next; } } } //链表中的结点 class Student{ //节点包括:数据域和指针域 //数据域 public int id; public String sex;//性别 public String name; //指针域 public Student next;//指向下一个位置的指针 public Student(int id,String sex,String name) { this.id = id; this.name = name; this.sex = sex; } //显示一个节点中的信息 public void show() { System.out.printf("学号 = %d\t性别 = %s\t姓名= %s\n",id,sex,name); } }

    Processed: 0.010, SQL: 9