java中的insert函数_Java 用insert和delete函数实现链表

class Linked_List

{//from n o w j a v a . c o m

node head;

static class node

{

int data;

node next;

// Constructor

node(int d)

{

data = d;

next = null;

}

}

public boolean Is_List_Empty()

{

if(head == null)

return true;

/*from 时 代 J a v a 公 众 号 - N o w J a v a . c o m*/

return false;

}

public void Insert_At_Beginning(int value)

{

node temp = new node(value);

temp.next = head;

head = temp;

}

public void Insert_At_End(int value)

{

node temp = new node(value), current = head;

temp.next = null;

if(Is_List_Empty())

{

head = temp;

return ;

}

while(current.next != null)

current = current.next;

current.next = temp;

}

public void Insert_After_Value(int desired, int value)

{

node current = head;

while(current != null && current.data != desired)

current = current.next;

if(current == null)

System.out.println("Element " + desired + " is not in list");

else

{

node temp = new node(value);

temp.next = current.next;

current.next = temp;

}

}

public void Delete_At_Beginning()

{

if(Is_List_Empty())

System.out.println("List is empty");

else

{

node temp = head;

head = head.next;

temp.next = null;

}

}

public void Delete_At_End()

{

if(Is_List_Empty())

{

System.out.println("List is empty");

return ;

}

node temp = head, prev = null;

if(head.next == null)

{

head = null;

temp.next = null;

return ;

}

while(temp.next != null)

{

prev = temp;

temp = temp.next;

}

prev.next = temp.next;

temp.next = null;

}

public void Delete_With_Value(int desired)

{

if(Is_List_Empty())

{

System.out.println("List is empty");

return ;

}

node temp = head, prev = null;

if(head.data == desired)

{

head = head.next;

temp.next = null;

return ;

}

while(temp != null && temp.data != desired)

{

prev = temp;

temp = temp.next;

}

if(temp == null)

System.out.println("Element " + desired + " is not in list");

else

{

prev.next = temp.next;

temp.next = null;

}

}

public void Search(int desired)

{

node temp = head;

while(temp != null && temp.data != desired)

temp = temp.next;

if(temp == null)

System.out.println("Element " + desired + " not found");

else

System.out.println("Element " + desired + " is present in list");

}

public void Print_Linked_List()

{

if(Is_List_Empty())

{

System.out.println("List is empty");

return ;

}

node current = head;

while(current.next != null)

{

System.out.print(current.data + " -> ");

current = current.next;

}

System.out.println(current.data);

}

public static void main(String[] args)

{

Linked_List LinkedList = new Linked_List();

int i;

for(i = 0; i < 5; i++)

LinkedList.Insert_At_Beginning(i);

LinkedList.Print_Linked_List();

for(i = 5; i < 10; i++)

/**代码未完, 请加载全部代码(NowJava.com).**/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值