-
Notifications
You must be signed in to change notification settings - Fork 0
/
JavaList.java
89 lines (76 loc) · 2.1 KB
/
JavaList.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
package DataStructure;
import java.util.*;
public class JavaList {
static class Node {
public int data;
public Node next = null;
Node()
{
}
Node(int data) {
this.data = data;
}
}
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int size = scan.nextInt();
Node tmp = new Node();
Node root = tmp;
for (int x = 0; x < size; x++) {
if (x == 0) {
tmp.data = scan.nextInt();
} else {
tmp.next = new Node(scan.nextInt());
tmp = tmp.next;
}
}
Node tmp2;
int query = scan.nextInt(),
index, number;
scan.nextLine();
String s;
for (int x = 0; x < query; x++) {
tmp = root;
s = scan.nextLine();
if (s.equals("Insert")) {
index = scan.nextInt();
number = scan.nextInt();
if (index == 0) {
root = new Node(number);
root.next = tmp;
} else {
for (int y = 1; y < index; y++) {
tmp = tmp.next;
}
tmp2 = new Node(number);
tmp2.next = tmp.next;
tmp.next = tmp2;
}
} else {
index = scan.nextInt();
if (index == 0) {
root = root.next;
} else {
for (int y = 1; y < index; y++) {
tmp = tmp.next;
}
tmp.next = tmp.next.next;
}
}
if (scan.hasNext()) {
scan.nextLine();
}
//write(root);
}
write(root);
}
public static void write(Node root)
{
Node tmp = root;
while(tmp != null) {
System.out.print(tmp.data + " ");
tmp = tmp.next;
}
System.out.println();
}
}