java怎样建立头插法单链表,java初学(3) 单链表——头插法

/**

*

*/

package com.wan.xiang.LinkList;

/**

* @author Sakura

* @Desc //TODO 链表类

* @Date 2019年7月21日下午3:59:00

*/

public class LinkList {

Node first;//头结点

Node last;//尾结点

public LinkList() {

//构造带头结点的链表

first = new Node();

last = first;

}

public void addNode(Object data) {

Node temp = new Node(data);

if(last == first) {

//如果链表中只有一个头结点

first.next = temp;

last = temp;

}else {

//头插法

temp.next = first.next;

first.next = temp;

}

}

@Override

//重写toString 输出链表

public String toString() {

StringBuilder sb = new StringBuilder();

sb.append("{");

Node temp;

temp = first.next;//头结点没有数据,从首元结点开始遍历

if (temp == null) {

return "{null}";//链表为空返回空链表

} else {

while (temp != null) {

sb.append(temp.data + ",");

temp = temp.next;

}

sb.setCharAt(sb.length() - 1, '}');//将最后一个逗号替换为“}”

return sb.toString();

}

}

public static void main(String[] args) {

LinkList list = new LinkList();

list.addNode("a");

list.addNode("b");

System.out.println(list);

}

}

/**

*

*/

package com.wan.xiang.LinkList;

/**

* @author Sakura

* @Desc //TODO Node class

* @Date 2019年7月21日下午3:57:39

*/

public class Node {

Object data;//data filed

Node next;//指针 filed

public Node() {

next = null;

}

public Node(Object data) {

this.data = data;

next = null;

}

}

标签:Node,插法,单链,java,temp,next,data,public,first

来源: https://blog.csdn.net/qq_41359651/article/details/96732301

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值