検索

ホームページ  >  に質問  >  本文

アルゴリズム - PHP を使用してスコアランキングを実装する方法、何か良いアイデアはありますか?

生徒のスコアのランキングを作成します。スコアは配列になります。
例: $scores = array(90,100,100); 自定义函数实现返回数组 $rank(3,1,1);

世界只因有你世界只因有你2782日前1186

全員に返信(5)返信します

  • 过去多啦不再A梦

    过去多啦不再A梦2017-05-16 13:18:24

    <?php

    リーリー

    ?>

    これはあなたのニーズを満たすことができますが、質問があります。この 2 つはテストで 99 点を取った方が 2 位になるべきではないでしょうか。

    返事
    0
  • ringa_lee

    ringa_lee2017-05-16 13:18:24

    質問者が望んでいるのは、元の配列の順番(紐付け可能)でランキングを表示することです。一般的な考え方は、元の配列に位置情報を追加し、並べ替えた結果に基づいてランキング配列を逆に構築することです。書き出すと少し長いです:

    リーリー

    n位同率でn位の人が複数いる場合、次の人はn+1人目となりますので、質問者様の例とは少し異なりますのでご注意ください。アルゴリズム全体の複雑さのボトルネックはソートであり、O(n lgn) です。

    返事
    0
  • PHP中文网

    PHP中文网2017-05-16 13:18:24

    PHP 独自の配列ソート関数を使用しますか?

    返事
    0
  • phpcn_u1582

    phpcn_u15822017-05-16 13:18:24

    http://www.php.net/manual/zh/...
    組み込みのデータ並べ替えで問題を解決できるはずです

    返事
    0
  • 我想大声告诉你

    我想大声告诉你2017-05-16 13:18:24

    まずこの配列をスコアで並べ替えてから、この配列を逆挿入します。あとはスコアに応じてキーを入手するだけです。

    さらに: スコアはデータベースに書き込まれないため、順番に取り出されます

    返事
    0
  • キャンセル返事