일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- aggregation
- aggs
- springboot
- token filter test
- Mac
- high level client
- 파이썬
- zip 암호화
- 900gle
- license delete
- API
- zip 파일 암호화
- Test
- MySQL
- query
- flask
- plugin
- docker
- ELASTIC
- 차트
- licence delete curl
- Elasticsearch
- Java
- Python
- matplotlib
- Kafka
- sort
- analyzer test
- License
- TensorFlow
Archives
- Today
- Total
개발잡부
[programmers] 같은 숫자는 싫어 본문
반응형
큐/스택 이래서 큐랑 스택으로 풀었으나
public static int[] solution(int[] arr) {
Stack<Integer> stack = new Stack<>();
Queue<Integer> queue = new LinkedList<>();
for (int i = 0; i < arr.length; i++) {
if (i == 0) {
stack.push(arr[i]);
queue.add(arr[i]);
}
if (i > 0 && stack.peek() != arr[i]) {
stack.push(arr[i]);
queue.add(arr[i]);
}
}
int k = 0;
int[] answer = new int[queue.size()];
while (!queue.isEmpty()) {
answer[k] = queue.poll();
k++;
}
return answer;
}
아래코드가 더 간결하네
list.getLast() 가 있었네
public class Solution {
public int[] solution(int []arr) {
LinkedList<Integer> list = new LinkedList<Integer>();
list.add(arr[0]);
for(int i=1; i<arr.length;i++){
if(arr[i]!=list.getLast()){
list.add(arr[i]);
}
}
Integer[] listing = list.toArray(new Integer[list.size()]);
int []answer =Arrays.stream(listing).mapToInt(Integer::intValue).toArray();
return answer;
}
}
반응형
'이직' 카테고리의 다른 글
코테준비 (0) | 2025.05.14 |
---|---|
[groom] 구름이의 취미 (0) | 2023.05.13 |
[codility] Dominator (0) | 2022.08.08 |
TwoSum (0) | 2022.07.27 |
hadoop 준비 (1) | 2022.07.27 |
Comments