Skip to content

Commit 9e85ccc

Browse files
solves design an oredred stream
1 parent cd4e1f6 commit 9e85ccc

File tree

2 files changed

+27
-1
lines changed

2 files changed

+27
-1
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -409,7 +409,7 @@
409409
| 1640 | [Check Array Formation Through Concatenation](https://leetcode.com/problems/check-array-formation-through-concatenation) | [![Java](assets/java.png)](src/CheckArrayFormationThroughConcatenation.java) | |
410410
| 1646 | [Get Maximum in Generated Array](https://leetcode.com/problems/get-maximum-in-generated-array) | [![Java](assets/java.png)](src/GetMaximumInGeneratedArray.java) | |
411411
| 1652 | [Defuse the Bomb](https://leetcode.com/problems/defuse-the-bomb) | [![Java](assets/java.png)](src/DefuseTheBomb.java) | |
412-
| 1656 | [Design an Ordered Stream](https://leetcode.com/problems/design-an-ordered-stream) | | |
412+
| 1656 | [Design an Ordered Stream](https://leetcode.com/problems/design-an-ordered-stream) | [![Java](assets/java.png)](src/DesignAnOrderedStream.java) | |
413413
| 1662 | [Check If Two String Arrays are Equivalent](https://leetcode.com/problems/check-if-two-string-arrays-are-equivalent) | | |
414414
| 1668 | [Maximum Repeating Substring](https://leetcode.com/problems/maximum-repeating-substring) | | |
415415
| 1672 | [Richest Customer Wealth](https://leetcode.com/problems/richest-customer-wealth) | | |

src/DesignAnOrderedStream.java

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
import java.util.ArrayList;
2+
import java.util.Collections;
3+
import java.util.List;
4+
5+
public class DesignAnOrderedStream {
6+
class OrderedStream {
7+
private final String[] array;
8+
private int pointer = 1;
9+
10+
public OrderedStream(int n) {
11+
this.array = new String[n + 1];
12+
}
13+
14+
public List<String> insert(int key, String value) {
15+
array[key] = value;
16+
if (pointer == key) {
17+
final List<String> list = new ArrayList<>();
18+
while (pointer < array.length && array[pointer] != null) {
19+
list.add(array[pointer++]);
20+
}
21+
return list;
22+
}
23+
return Collections.emptyList();
24+
}
25+
}
26+
}

0 commit comments

Comments
 (0)