对结构矢量进行排序

时间:2017-05-07 15:11:28

标签: c++ sorting struct

我有一个很大的问题..我是编程的初学者,我尝试用C ++制作一个足球联赛排名的程序,必须根据他们的分数对球队进行排序。

有人可以帮忙提出想法吗?

我为团队创建了一个名称和点数的结构。

我如何对团队进行排序?P.S。抱歉我的英语不好。

这是我的代码:

<?php
session_start();
include_once 'db/dbconnect.php';


$var = $_GET['name'];

// echo $var;

$json = [];

$sql = "SELECT * from recipes WHERE recipes.recipeName = '.$var'";
$rslt = mysqli_query($con,$sql);

echo $rslt;


?>

1 个答案:

答案 0 :(得分:0)

我很好奇为什么要包含算法,但不要使用任何算法。你知道STL吗?由于你包含算法,我想你可能知道一些简单的函数,如swap,sort和copy。它们易于使用,您只需键入一行而不是自己编写冒泡。在使用sort函数之前,您应该定义哪些订单可以对这些团队生效。就像这样:

bool compareTeams(const Team &t1, const Team &t2) {
    if (t1.getScore() == t2.getScore()) {
        return t1.getName() < t2.getName();
    }
    else {
        return t1.getScore() < t2.getScore();
    }
}

上面的代码定义了我们考虑对团队进行排序的方向,首先我们按分数对它们进行排序,如果两个分数相等,那么我们按照名称对它们进行排序。 最后我们可以使用STL中现成的sort函数。现在可以使用我们定义的顺序。 (我猜数组v []代表球队。我是对的吗?)

std::sort(v, v + 20, compareTeams);