我正在尝试弄清楚如何按照结构体内部特定的变量对数组中的结构体进行排序。下面是我的代码:
可能是重复问题:
c++按结构体排序
struct Process{
int pid;
int burst;
int arrival;
};
int main(int argc, char *argv[]){
// The number of processes
int numProcesses = 3;
//Create an array that holds 10 Process structs
Process *arrayOfProcesses = new Process[numProcesses];
// Puts values in each pid, burst, and arrival
arrayOfProcesses[0].pid = 0;
arrayOfProcesses[0].burst = 8;
arrayOfProcesses[0].arrival = 2;
arrayOfProcesses[1].pid = 1;
arrayOfProcesses[1].burst = 12;
arrayOfProcesses[1].arrival = 3;
arrayOfProcesses[2].pid = 2;
arrayOfProcesses[2].burst = 4;
arrayOfProcesses[2].arrival = 1;
// Sort the array based on the arrival time
// Help! :)
}
我希望能够对我的代码中的数组按到达时间进行排序。我简化了代码,以便让您大致了解我的目标。在我的实际代码中,该数组是从文件中读取的信息动态填充的。我知道使用List或Vector会是更好的选择,但我决定使用数组来解决这个问题。如果有任何关于排序的帮助将不胜感激! :)
std::vector
,但问题假设使用一个数组,一些答案已经正确地解决了这个问题)。 - jogojapan