20165210 单链表课下补做

Posted lykkyl

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了20165210 单链表课下补做相关的知识,希望对你有一定的参考价值。

20165210 单链表

要求:

数据结构-单链表

参见附件,补充MyList.java的内容,提交运行结果截图(全屏)
课下推送代码到码云

public class MyList {
public static void main(String [] args) {
//选用合适的构造方法,用你学号前后各两名同学的学号创建四个结点

    //把上面四个节点连成一个没有头结点的单链表
    
    //遍历单链表,打印每个结点的

    //把你自己插入到合适的位置(学号升序)

    //遍历单链表,打印每个结点的

    //从链表中删除自己

    //遍历单链表,打印每个结点的
}

}

public class Node

public Node(T data, Node<T> next)            //构造结点,data指定数据元素,next指定后继结点
{
    this.data = data;                        //T对象引用赋值
    this.next = next;                        //Node<T>对象引用赋值
}
public Node()
{
    this(null, null);
}
public String toString()                     //返回结点数据域的描述字符串
{
    return this.data.toString();
}

}

实验代码:

import java.util.*;
class Stu implements Comparable{
    int id;
    String name;
    Stu(String n, int i){
        name=n;
        id=i;
    }
    public int compareTo(Object b){
        Stu st=(Stu)b;
        return (this.id-st.id);
    }
}
public class MyList {
    public static void main(String [] args) {
        //选用合适的构造方法,用你学号前后各两名同学的学号创建四个结点
        LinkedList<Stu> list=new LinkedList<>();
        list.add(new Stu("孔月",5208));
        list.add(new Stu("陈思兵",5209));
        list.add(new Stu("丁奕",5211));
        list.add(new Stu("任胤",5212));
        //把上面四个节点连成一个没有头结点的单链表
        Iterator<Stu> iter=list.iterator();
        //遍历单链表,打印每个结点的
        System.out.println("初始单链表为:");
        while (iter.hasNext()){
            Stu st=iter.next();
            System.out.println(st.id+" "+st.name);
        }
        //把你自己插入到合适的位置(学号升序)
        list.add(new Stu("刘雨坤",5210));
        Collections.sort(list);
        //遍历单链表,打印每个结点的
        iter=list.iterator();
        System.out.println("插入自己的学号和姓名以后,单链表为:");
        while (iter.hasNext()){
            Stu st=iter.next();
            System.out.println(st.id+" "+st.name);
        }
        //从链表中删除自己
        list.remove(2);
        iter=list.iterator();
        //遍历单链表,打印每个结点的
        System.out.println("删除自己的学号和姓名以后,单链表为:");
        while (iter.hasNext()){
            Stu st=iter.next();
            System.out.println(st.id+" "+st.name);
        }

    }
}

代码链接:
https://gitee.com/BESTI-IS-JAVA-2018/20165210lyk/blob/master/kexiaxiti/Mylist.java

以上是关于20165210 单链表课下补做的主要内容,如果未能解决你的问题,请参考以下文章

20165308 2017-2018-2 第十周课下补做

20165329 第一次考试课下补做

20165202 week10课下补做

第十周课下补做

20165315 第二次考试课下补做

20165235 第十周课下补做