728x90
# 오늘의 학습 키워드
정렬
# 오늘의 문제
https://school.programmers.co.kr/learn/courses/30/lessons/12917
문제 설명
문자열 s에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로운 문자열을 리턴하는 함수, solution을 완성해주세요.
s는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로 간주합니다.
제한 사항
- str은 길이 1 이상인 문자열입니다.
# 나의 풀이방식
import java.util.*;
import java.util.stream.*;
class Solution {
public String solution(String s) {
return Arrays.stream(s.split("")).sorted(Comparator.reverseOrder()).collect(Collectors.joining (""));
}
}
# 오늘의 공부
1. Stream 정렬
- sorted() : 오름차순
- sorted(Comparator.reverseOrder()) : 내림차순
2. Stream.collect()
- collect(Collectors.toList()) , collect(Collectors.toSet()) : Stream의 아이템들을 List 또는 Set 자료형으로 반환
- collect(Collectors.joining("")) : Stream의 아이템들을 joining해서 1개의 string으로 변환
- collect(maxBy(comparing())) : Stream의 아이템들을 Sorting하여 가장 큰 객체 리턴
- collect(Collectors.averagingInt()) : Stream의 아이템들의 평균값 리턴
반응형
'개발 공부 > TIL(Today I Learned)' 카테고리의 다른 글
99클럽 코테 스터디 14일차 TIL Symmetric Tree (0) | 2024.08.05 |
---|---|
99클럽 코테 스터디 13일차 TIL Search in a Binary Search Tree (0) | 2024.08.04 |
99클럽 코테 스터디 11일차 TIL 정수 내림차순으로 배치하기 (0) | 2024.08.02 |
99클럽 코테 스터디 10일차 TIL Kth Largest Element in a Stream (0) | 2024.07.31 |
99클럽 코테 스터디 8일차 TIL 올바른 괄호 (0) | 2024.07.29 |