내림차순으로 문자열을 정렬하는 C++ (STL)의 문자열 함수가 있습니까? 그렇지 않으면 O (n) 시간에 내림차순으로 문자열을 정렬하는 방법.문자열을 내림차순으로 정렬합니다.
답변
C++에서 문자열을 정렬하는 함수가 있으며 std::less
이 아닌 std::greater
과 비교하여 내림차순으로 정렬 할 수 있습니다.
그러나 O (n) 시간은 정렬되지 않습니다 (O (n log n)가됩니다). 이를 위해 버킷 정렬을 사용해야합니다.
가장 간단한 방법은 std :: sort, 다음 std :: reverse it입니다. 정렬 알고리즘입니다. 역방향 유틸리티입니다.
#include <iostream>
#include <string>
#include <algorithm>
#include <utility>
int main(){
std::string str = "Hello Beep 5412";
std::cout << "normal string:" << std::endl;
std::cout << str << std::endl;
std::sort(str.begin(), str.end()); //sort it
std::reverse(str.begin(), str.end()); //reverse it
std::cout << "\nsorted, descending:" << std::endl;
std::cout << str << std::endl;
system("pause");
return 0;
}
출력 :
normal string:
Hello Beep 5412
sorted, descending:
polleeeHB5421
'std :: sort'와'std :: greater'를 사용하는 것이'sort (begin (str), end (str), std :: greater
예, 그건 사실입니다. 또한 깔끔한 방법 –
당신은 선형 시간을 필요로하는 경우, 당신은 범용 정렬 알고리즘 (그들은 모두 O(n log n)
평균 경우있어) 중 하나를 사용할 수 없습니다. 그래서 : 아니오, 표준 라이브러리에는 적절한 함수가 하나도 없습니다.
Pigeonhole sort 또는 다른 버킷 정렬과 같은 것이 작동 할 수 있습니다. 가능한 256 자의 빈도를 추적하고 그 후에 문자열을 다시 작성하십시오.
char 값에 대해 원하는 어휘 순서에 대한 아이디어가 필요하지만 올바른 (내림차순) 순서로 버킷을 걷는 것으로 문자열을 다시 작성한다는 점에 유의하십시오.
- 1. 배열을 내림차순으로 정렬합니다.
- 2. sal을 평균 한 다음 내림차순으로 정렬합니다.
- 3. 색인 배열을 PHP 색인에서 내림차순으로 정렬합니다.
- 4. created_at 날짜의 내림차순으로 객체 배열을 정렬합니다.
- 5. 문자열을 사전의 시간으로 정렬합니다.
- 6. 목록의 모든 문자열을 목록 내림차순으로
- 7. 람다를 사용하여 문자열을 내림차순으로 설정합니다.
- 8. MySQL 쿼리는 대부분의 결과/일치 항목을 내림차순으로 정렬합니다.
- 9. NSDictionary를 내림차순으로 내림차순으로 정렬합니다. `compare : options :`selector를 사용하여 옵션을 보내는 방법은 무엇입니까?
- 10. 두리스트를 동일하게 정렬합니다.
- 11. 문자열의 숫자에 따라 배열의 문자열을 정렬합니다.
- 12. 정수 및 문자열을 사용하여 키의 맵을 정렬합니다.
- 13. 배열에서 문자열을 사전 순으로 정렬합니다. Java
- 14. 처음 몇 개의 문자열을 기반으로 알파벳순으로 정렬합니다.
- 15. 응용 프로그램이 데이터베이스와 다르게 문자열을 정렬합니다.
- 16. arraylist 객체를 두 값으로 정렬합니다.
- 17. 내림차순으로 버블 정렬 문자열
- 18. x 축을 내림차순으로 정렬하는 방법
- 19. 활성 레코드를 분당 값으로 정렬합니다.
- 20. C++에서 부동 소수점 배열을 정렬합니다.
- 21. 정규식은 역순으로 정렬합니다.
- 22. MySQL - 하위 문자열을 가장 낮은 것부터 가장 큰 것으로 정렬합니다.
- 23. C - 배열의 char 문자열을 같은 char 사용자 입력으로 정렬합니다.
- 24. 조건에 따라 내림차순으로 정렬
- 25. 내림차순으로 배열 정렬
- 26. 내림차순으로 배열 검사
- 27. 내림차순으로 여러 열을 정렬
- 28. 내림차순으로 문자열 배열 정렬
- 29. 그룹을 내림차순으로 정렬
- 30. 내림차순으로 날짜순으로 정렬 하시겠습니까?
함수가'sort'라고합니다. – user463035818
@Yathartha O (n)으로 정렬하는 알고리즘을 알고 있습니까? –
http://stackoverflow.com/questions/9107516/sorting-characters-of-a-c-string 중복 –