Skip to content

Commit 575e04c

Browse files
Merge branch 'neetcode-gh:main' into main
2 parents fc90108 + ec2ae50 commit 575e04c

File tree

5 files changed

+114
-1
lines changed

5 files changed

+114
-1
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ If you would like to have collaborator permissions on the repo to merge your own
141141
<sub>[0225 - Implement Stack Using Queues](https://leetcode.com/problems/implement-stack-using-queues/)</sub> | <sub><div align='center'>[✔️](c%2F0225-implement-stack-using-queues.c)</div></sub> | <sub><div align='center'>[✔️](cpp%2F0225-implement-stack-using-queues.cpp)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](go%2F0225-implement-stack-using-queues.go)</div></sub> | <sub><div align='center'>[✔️](java%2F0225-implement-stack-using-queues.java)</div></sub> | <sub><div align='center'>[✔️](javascript%2F0225-implement-stack-using-queues.js)</div></sub> | <sub><div align='center'>[✔️](kotlin%2F0225-implement-stack-using-queues.kt)</div></sub> | <sub><div align='center'>[✔️](python%2F0225-implement-stack-using-queues.py)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](rust%2F0225-implement-stack-using-queues.rs)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](typescript%2F0225-implement-stack-using-queues.ts)</div></sub>
142142
<sub>[0155 - Min Stack](https://leetcode.com/problems/min-stack/)</sub> | <sub><div align='center'>[✔️](c%2F0155-min-stack.c)</div></sub> | <sub><div align='center'>[✔️](cpp%2F0155-min-stack.cpp)</div></sub> | <sub><div align='center'>[✔️](csharp%2F0155-min-stack.cs)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](go%2F0155-min-stack.go)</div></sub> | <sub><div align='center'>[✔️](java%2F0155-min-stack.java)</div></sub> | <sub><div align='center'>[✔️](javascript%2F0155-min-stack.js)</div></sub> | <sub><div align='center'>[✔️](kotlin%2F0155-min-stack.kt)</div></sub> | <sub><div align='center'>[✔️](python%2F0155-min-stack.py)</div></sub> | <sub><div align='center'>[✔️](ruby%2F0155-min-stack.rb)</div></sub> | <sub><div align='center'>[✔️](rust%2F0155-min-stack.rs)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](swift%2F0155-min-stack.swift)</div></sub> | <sub><div align='center'>[✔️](typescript%2F0155-min-stack.ts)</div></sub>
143143
<sub>[0150 - Evaluate Reverse Polish Notation](https://leetcode.com/problems/evaluate-reverse-polish-notation/)</sub> | <sub><div align='center'>[✔️](c%2F0150-evaluate-reverse-polish-notation.c)</div></sub> | <sub><div align='center'>[✔️](cpp%2F0150-evaluate-reverse-polish-notation.cpp)</div></sub> | <sub><div align='center'>[✔️](csharp%2F0150-evaluate-reverse-polish-notation.cs)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](go%2F0150-evaluate-reverse-polish-notation.go)</div></sub> | <sub><div align='center'>[✔️](java%2F0150-evaluate-reverse-polish-notation.java)</div></sub> | <sub><div align='center'>[✔️](javascript%2F0150-evaluate-reverse-polish-notation.js)</div></sub> | <sub><div align='center'>[✔️](kotlin%2F0150-evaluate-reverse-polish-notation.kt)</div></sub> | <sub><div align='center'>[✔️](python%2F0150-evaluate-reverse-polish-notation.py)</div></sub> | <sub><div align='center'>[✔️](ruby%2F0150-evaluate-reverse-polish-notation.rb)</div></sub> | <sub><div align='center'>[✔️](rust%2F0150-evaluate-reverse-polish-notation.rs)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](swift%2F0150-evaluate-reverse-polish-notation.swift)</div></sub> | <sub><div align='center'>[✔️](typescript%2F0150-evaluate-reverse-polish-notation.ts)</div></sub>
144-
<sub>[2390 - Removing Stars From a String](https://leetcode.com/problems/removing-stars-from-a-string/)</sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'></div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](java%2F2390-removing-stars-from-a-string.java)</div></sub> | <sub><div align='center'>[✔️](javascript%2F2390-removing-stars-from-a-string.js)</div></sub> | <sub><div align='center'>[✔️](kotlin%2F2390-removing-stars-from-a-string.kt)</div></sub> | <sub><div align='center'>[✔️](python%2F2390-removing-stars-from-a-string.py)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub>
144+
<sub>[2390 - Removing Stars From a String](https://leetcode.com/problems/removing-stars-from-a-string/)</sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](cpp%2F2390-removing-stars-from-a-string.cpp)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](java%2F2390-removing-stars-from-a-string.java)</div></sub> | <sub><div align='center'>[✔️](javascript%2F2390-removing-stars-from-a-string.js)</div></sub> | <sub><div align='center'>[✔️](kotlin%2F2390-removing-stars-from-a-string.kt)</div></sub> | <sub><div align='center'>[✔️](python%2F2390-removing-stars-from-a-string.py)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub>
145145
<sub>[0946 - Validate Stack Sequences](https://leetcode.com/problems/validate-stack-sequences/)</sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](java%2F0946-validate-stack-sequences.java)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](kotlin%2F0946-validate-stack-sequences.kt)</div></sub> | <sub><div align='center'>[✔️](python%2F0946-validate-stack-sequences.py)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub>
146146
<sub>[0022 - Generate Parentheses](https://leetcode.com/problems/generate-parentheses/)</sub> | <sub><div align='center'>[✔️](c%2F0022-generate-parentheses.c)</div></sub> | <sub><div align='center'>[✔️](cpp%2F0022-generate-parentheses.cpp)</div></sub> | <sub><div align='center'>[✔️](csharp%2F0022-generate-parentheses.cs)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](go%2F0022-generate-parentheses.go)</div></sub> | <sub><div align='center'>[✔️](java%2F0022-generate-parentheses.java)</div></sub> | <sub><div align='center'>[✔️](javascript%2F0022-generate-parentheses.js)</div></sub> | <sub><div align='center'>[✔️](kotlin%2F0022-generate-parentheses.kt)</div></sub> | <sub><div align='center'>[✔️](python%2F0022-generate-parentheses.py)</div></sub> | <sub><div align='center'>[✔️](ruby%2F0022-generate-parentheses.rb)</div></sub> | <sub><div align='center'>[✔️](rust%2F0022-generate-parentheses.rs)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](swift%2F0022-generate-parentheses.swift)</div></sub> | <sub><div align='center'>[✔️](typescript%2F0022-generate-parentheses.ts)</div></sub>
147147
<sub>[0735 - Asteroid Collision](https://leetcode.com/problems/asteroid-collision/)</sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](cpp%2F0735-asteroid-collision.cpp)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](java%2F0735-asteroid-collision.java)</div></sub> | <sub><div align='center'>[✔️](javascript%2F0735-asteroid-collision.js)</div></sub> | <sub><div align='center'>[✔️](kotlin%2F0735-asteroid-collision.kt)</div></sub> | <sub><div align='center'>[✔️](python%2F0735-asteroid-collision.py)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](rust%2F0735-asteroid-collision.rs)</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>[✔️](typescript%2F0735-asteroid-collision.ts)</div></sub>
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
class Solution {
2+
public:
3+
string removeStars(string s) {
4+
stack<char> stk;
5+
for(int i=0;i<s.size();i++){
6+
if(s[i]=='*'){
7+
stk.pop();
8+
}else stk.push(s[i]);
9+
}
10+
string res = "";
11+
while(!stk.empty()){
12+
res += stk.top();
13+
stk.pop();
14+
}
15+
reverse(res.begin(), res.end());
16+
return res;
17+
}
18+
};

java/0872-leaf-similar-trees.java

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
class Solution {
2+
public boolean leafSimilar(TreeNode root1, TreeNode root2) {
3+
ArrayList<Integer> ls1 = new ArrayList<>();
4+
ArrayList<Integer> ls2 = new ArrayList<>();
5+
tree(root1, ls1);
6+
tree(root2, ls2);
7+
return ls1.equals(ls2);
8+
}
9+
private void tree(TreeNode root, List<Integer> ls){
10+
if(root == null)
11+
return;
12+
if(root.left == null && root.right == null)
13+
ls.add(root.val);
14+
tree(root.left, ls);
15+
tree(root.right, ls);
16+
}
17+
}
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
/*--------------------------
2+
Time Complexity: O(n)
3+
Space Complexity: O(n)
4+
---------------------------*/
5+
class Solution {
6+
public int amountOfTime(TreeNode root, int start) {
7+
Map<Integer, List<Integer>> g = treeTograph(root);
8+
int time = 0;
9+
Queue<Integer> q = new LinkedList<>();
10+
Set<Integer> visited = new HashSet<>();
11+
q.add(start);
12+
visited.add(start);
13+
14+
while(!q.isEmpty()){
15+
int size = q.size();
16+
for (int i = 0; i < size; i++) {
17+
int curr = q.poll();
18+
for (int neighbour : g.get(curr)) {
19+
if (!visited.contains(neighbour)) {
20+
q.add(neighbour);
21+
visited.add(neighbour);
22+
}
23+
}
24+
}
25+
time++;
26+
}
27+
return time-1;
28+
}
29+
public HashMap<Integer, List<Integer>> treeTograph(TreeNode root) {
30+
HashMap<Integer, List<Integer>> graph = new HashMap<>();
31+
buildGraph(root, graph);
32+
return graph;
33+
}
34+
35+
private void buildGraph(TreeNode node, HashMap<Integer, List<Integer>> graph) {
36+
if (node == null) {
37+
return;
38+
}
39+
40+
graph.putIfAbsent(node.val, new ArrayList<>());
41+
42+
if (node.left != null) {
43+
graph.get(node.val).add(node.left.val);
44+
graph.putIfAbsent(node.left.val, new ArrayList<>());
45+
graph.get(node.left.val).add(node.val);
46+
buildGraph(node.left, graph);
47+
}
48+
49+
if (node.right != null) {
50+
graph.get(node.val).add(node.right.val);
51+
graph.putIfAbsent(node.right.val, new ArrayList<>());
52+
graph.get(node.right.val).add(node.val);
53+
buildGraph(node.right, graph);
54+
}
55+
}
56+
}

kotlin/0872-leaf-similar-trees.kt

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
class Solution {
2+
fun leafSimilar(root1: TreeNode?, root2: TreeNode?): Boolean {
3+
4+
fun dfs(root: TreeNode?, res: MutableList<Int>) {
5+
root?: return
6+
7+
if (root.left == null && root.right == null)
8+
res.add(root.`val`)
9+
10+
dfs(root.left, res)
11+
dfs(root.right, res)
12+
}
13+
14+
val res1: MutableList<Int> = mutableListOf()
15+
val res2: MutableList<Int> = mutableListOf()
16+
17+
dfs(root1, res1)
18+
dfs(root2, res2)
19+
20+
return res1 == res2
21+
}
22+
}

0 commit comments

Comments
 (0)