Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Latest commit

 

History

History
History
127 lines (116 loc) · 2.77 KB

File metadata and controls

127 lines (116 loc) · 2.77 KB
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
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
117
118
119
120
121
122
123
124
125
126
127
package jiuzhang.java.elementary;
public class Stack {
//*Note: good way, it is hard to keep track of previous node, why not operate at the beginning of the list
// beginning of list is the top of the stack, do push as insert element at the head of list
// And also use the dummy to make preInsersion of the head to postInsertion of the dummy
class ListNode {
private int val;
public ListNode next;
ListNode(int val){
this.val = val;
}
}
ListNode dummy;
Stack() {
dummy = new ListNode(-1); //dummy always point to the head of the list
}
public void push(int x) {
// write your code here
ListNode node = new ListNode(x);
node.next = dummy.next;
dummy.next = node;
}
/*
* @return: nothing
*/
public void pop() {
// write your code here
dummy.next = dummy.next.next;
}
/*
* @return: An integer
*/
public int top() {
// write your code here
if (isEmpty()) {
return -1;
}
return dummy.next.val;
}
/*
* @return: True if the stack is empty
*/
public boolean isEmpty() {
// write your code here
return dummy.next == null;
}
//
// //bad way
// /*
// * @param x: An integer
// * @return: nothing
// */
// class ListNode {
// private int val;
// public ListNode next;
// ListNode(int val){
// this.val = val;
// }
// }
//
// private ListNode dummy, tail;
//
// private int size;
//
// Stack() {
// size = 0;
// dummy = new ListNode(0);
// tail = null;
// }
//
//
// public void push(int x) {
// // write your code here
// if (this.size == 0) {
// dummy.next = new ListNode(x);
// tail = dummy.next;
// } else {
// tail.next = new ListNode(x);
// tail = tail.next;
// }
// size++;
// }
//
// /*
// * @return: nothing
// */
// public void pop() {
// // write your code here
// ListNode preTail = dummy;
// while (preTail.next.next != null) { //*Note: this take to much time
// preTail = preTail.next;
// }
// tail = preTail;
// preTail.next = null;
// size--;
// }
//
// /*
// * @return: An integer
// */
// public int top() {
// // write your code here
// if (this.isEmpty()) {
// return -1;
// }
// return tail.val;
// }
//
// /*
// * @return: True if the stack is empty
// */
// public boolean isEmpty() {
// // write your code here
// return size == 0;
// }
}
Morty Proxy This is a proxified and sanitized view of the page, visit original site.