2014-01-21 4 views
-1

그래서 사용자가 제공 한 10 개의 요소 배열을 정렬하려고합니다. 예를 들어배열을 C++로 정렬

이용시 1 : 5

이용시 2 : 3

이용시 3 : 9

등 등 ...

I가도 함께 값 페어링 할 사람. 그래서 읽어야합니다

사람 3 : 9

사람에게 1 : 5

을 사람 2 : 3

정렬 내림차순으로 값을.

내가 배열을 정렬 할 수 있습니다,하지만 난 값 페어링 할 수있는 사람의 수를 얻을 어차피 .... 내가 코드의 부족에 대해 사과

, 그것은 집에서 내가 직장에서 오전/

답변

0

내가 당신이 그것을 함께 stringint를 저장할 수있는 볼 수있는 당신이 c++

http://www.cplusplus.com/reference/map/map/ 
http://kengine.sourceforge.net/tutorial/g/stdmap-eng.htm 
http://www.yolinux.com/TUTORIALS/CppStlMultiMap.html 

beacuse에 Map를 사용하는 것이 좋습니다 것입니다. 이고 마지막 부분은 int에 따라 분류하는 것입니다.

0

std::pair 개체에 각 요소를 저장하고 std::algorithm 정렬을 사용할 수 있습니다. 귀하의 주문 기준을 설명해야하는 구체적인 비교 자로 템플릿을 매개 변수화하여 첫 번째 요소 또는 두 번째 요소 쌍으로 정렬합니다.

struct myclass { 
    bool operator() (pair i,pair j) { return (i.first>j.first);} 
} myobject; 

... 
... 
... 

vector<pair<string, int> > vectorA = ... 
sort (vectorA.begin(), vectorA.end(), myobject); 
:

당신은 당신의 요구에 적용 할 수 있습니다 http://www.cplusplus.com/reference/algorithm/sort/에서 예를