Tôi có một std :: danh sách các cạnh đồ thị và tôi muốn sắp xếp các cạnh dựa trên điểm đến của chúng vượt trội và sau đó là sự không rõ ràng của chúng. Nhưng tôi đang nhận được ngoại lệ của nhà điều hành không hợp lệ < trong chức năng so sánh của tôi dưới đây là mã của tôi. Danh sách của tôi chứa các con trỏ đến các cạnh và các cạnh có các nút đích làm thành viên của chúng.toán tử không hợp lệ <trong khi sắp xếp std :: list
bool compareEdges(const Edge *e1,const Edge *e2){
if(e1->destination->outdegree < e2->destination->outdegree){
return true;
}
else if(e1->destination->outdegree > e2->destination->outdegree){
return false;
}
else if(e1->destination->indegree > e2->destination->indegree){
return false;
}
return true;
}
Và đây là cuộc gọi đến chức năng sắp xếp.
currentNode->edgeList.sort(compareEdges);
Hãy giúp tôi xóa ngoại lệ này.
Cảm ơn
'(currentNode-> edgeList) .sort (compareEdges);' help? – DhruvPathak
Các loại 'outdegree' và' indegree' là gì? –
Loại 'outdegree' là gì ?? –