java头插法建立单链表,单链表的创建 头插法 Java数据结构与算法

/**

*

* @author sunnyykn

*/

class Link

{

public int iData; //data item key

public double dData; //data item

public Link next; //next link in list

public Link(int id,double dd) //constructor

{

iData = id; //initalize data

dData = dd; //('next' is automatically set to null)

}

public void displayLink() //display ourself

{

System.out.print("{" + iData + "," + dData + "}");

}

}//end class Link

class LinkList

{

private Link first; //ref to first link on list

public LinkList()

{

first = null; //no items no list yet

}

public boolean isEmpty() //true if list is empty

{

return (first == null);

}

public void insertFirst(int id,double dd) //insert at start of list

{

Link newLink = new Link(id,dd); //make new link

newLink.next = first; //newLink-->old first

first = newLink; //first-->newLink

}

public Link deleteFirst() //delete first item

{

Link temp = first; //save reference to link

first = first.next; //delete it:first-->old next

return temp;

}

public void displayList()

{

System.out.print("List(first-->Last):");

Link current = first; //start at beginning of list

while(current != null)

{

current.displayLink();

current = current.next;

}

System.out.println("");

}

}//end class LinkList

class LinkListApp

{

public static void main(String[] args)

{

LinkList theList = new LinkList(); //make new list

theList.insertFirst(22, 2.99);

theList.insertFirst(44, 4.99);

theList.insertFirst(66, 6.99);

theList.insertFirst(88, 8.99);

theList.displayList(); //display list

while( !theList.isEmpty() )

{

Link aLink = theList.deleteFirst(); //delete link

System.out.print("Deleted "); //display it

aLink.displayLink();

System.out.println("");

}

theList.displayList();

}

}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值