并列排名算法 电脑版发表于:2023/4/13 16:33 使用js的并列排名算法 ``` // 如果要并列排名就这样写 for (let index = 0; index < rowdata.length; index++) { const element = rowdata[index]; // 第一条数据单独处理 if (index === 0) { element.sort = rank } // 如果和上一个分数一样就并列排名 else if (element.zh_number === rowdata[index - 1].zh_number) { element.sort = rank } // 如果和上一个分数不一样排名就+1 else { rank = rank + 1 element.sort = rank } } ``` 使用.net的并列排名 ``` // 一般要做排名先要对labClassStatisticsStudentAll排序哦,这里就不列了。如果只是为了计算排名不管顺序,可以在foreach后面直接就排序了,如.OrderByDescending(a => a.CompletPrByStudent) int rank = 0; decimal? lastComplete = -1; foreach (var item in labClassStatisticsStudentAll) { // 和上一次不相同排名才+1,相同就使用并列排名 if (lastComplete != item.CompletPrByStudent) { rank++; } item.Rank = rank; lastComplete = item.CompletPrByStudent; } ```