下列函数实现排行榜中单个元素的位置调整(类似插入排序的相邻搬移)。当某玩家分数增加,需将其向 前移动时, while 循环的条件应为( )。
struct Player{ int score; };
void up(Player players[], int n, int idx){
Player cur = players[idx];
int i = idx;
while( ____________________ ){
players[i] = players[i-1];
i--;
}
players[i] = cur;
}
- A. i > 0 && cur.score > players[i-1].score
- B. i > 0 && cur.score < players[i-1].score
- C. i < n-1 && cur.score > players[i+1].score
- D. i < n-1 && cur.score < players[i+1].score
正确答案:A