나는 (4) 부동 소수점 숫자의 배열을 가지며 내림차순으로 배열을 정렬해야합니다. 저는 C++을 처음 접했고, 이것을하기위한 가장 좋은 방법이 무엇인지 궁금합니다.C++에서 부동 소수점 배열을 정렬합니다.
감사합니다.
나는 (4) 부동 소수점 숫자의 배열을 가지며 내림차순으로 배열을 정렬해야합니다. 저는 C++을 처음 접했고, 이것을하기위한 가장 좋은 방법이 무엇인지 궁금합니다.C++에서 부동 소수점 배열을 정렬합니다.
감사합니다.
기본이 아닌 비교에 사용 std::sort
:
float data[SIZE];
data[0] = ...;
...
std::sort(data, data + size, std::greater<float>());
가정하면 다음
float my_array[4];
당신은 너무처럼 정렬 할 수 있습니다
#include <algorithm>
// ... in your code somewhere
float* first(&my_array[0]);
float* last(first + 4);
std::sort(first, last);
참고 두 번째 매개 변수가 (last
)은 이전을 가리키고 있습니다. 네 요소 배열의 끝; 이것은 배열의 끝을 STL 알고리즘에 전달하는 올바른 방법입니다. 여기에서 전화하실 수 있습니다 :
std::reverse(first, last);
배열 내용을 역순으로 사용하십시오. sort
루틴에 대한 사용자 지정 비교기를 작성할 수도 있지만 초보자 수준의 STL 이상의 단계라고 생각합니다. 그것은 당신에게 달려 있습니다.
@sth - 잊어 버렸습니다. 내 대답 업데이트 ... –
초보자를 위해,'std :: sort'는 STL의''헤더에 정의되어 있습니다. 물론 이것이 숙제 인 경우 자신의'sort' 함수를 구현해야합니다. –
Johnsyweb
@RSamuelKlatchko 코드에서 "크기"란 무엇입니까? – tmighty