-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathLLDemo3.java
116 lines (106 loc) · 2.23 KB
/
LLDemo3.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
class LinkList
{
private class Node
{
private String data;
private Node link;
Node()
{
data =null;
link=null;
}
Node(String newdata,Node newlink)
{
setData(newdata);
link=newlink;
}
public void setData(String new_data)
{
data=new_data;
}
public void setLink(Node new_link)
{
link=new_link;
}
public String getData(){return data;}
public Node getLink(){return link;}
}
protected Node head;
public void addToStart(String val)
{head=new Node(val,head);}
public LinkList(){head=null;}
class Iterator2List
{
private Node prev,pos;
Iterator2List()
{
pos=head;
prev=null;
}
public void restart()
{
pos=head;
prev=null;
}
public String next()
{
if(head==null) return null;
String toreturn=pos.getData();
prev=pos;
pos=pos.getLink();
return toreturn;
}
public boolean hasNext()
{
return(pos!=null);
}
public void addHere(String newval)
{
prev.link=new Node(newval,pos);
}
public void changeHere(String chval)
{
pos.setData(chval);
}
public void delete()
{
if(pos==null)return ;
prev.link=pos.getLink();
}
/*public void dispaly()
{
while(pos!=null)
{
System.out.print(pos.getData()+"<-" );
}
System.out.println("null");
}*/
}
public Iterator2List iterator()
{
return new Iterator2List();
}
}
class LLDemo3
{
public static void main(String []args)
{
LinkList list=new LinkList();
LinkList.Iterator2List i=list.iterator();
list.addToStart("Apple");
list.addToStart("Banana");
list.addToStart("Carrot");
list.addToStart("Mango");
i.restart();
while(i.hasNext())
System.out.print(i.next()+"<-");
System.out.println("null");
i.restart();
i.next();
i.addHere("Orange");
i.restart();
while(i.hasNext())
System.out.print(i.next()+"<-");
System.out.println("null");
}
}