yに基づいてVector2配列を並べ替える最も効率的な方法は何ですか? 例:以下のベクターの配列を考えるVector2の配列をソートするより効率的な方法(「y」減少)ですか?
:そう "Y" で順序付け
Vector2(1, 4)
Vector2(5, 9)
Vector2(0, 3)
Vector2(0, 6)
Vector2(1, -2)
配列:1まで
Vector2(5, 9)
Vector2(0, 6)
Vector2(1, 4)
Vector2(0, 3)
Vector2(1, -2)
:
私が使っている言語は私にこれを与える:
空隙sort_custom(オブジェクトOBJ、文字列FUNC)
カスタムメソッドを使用して配列をソート。引数は、メソッドとそのメソッドの名前を保持するオブジェクトです。カスタムメソッドは2つの引数(配列の要素のペア)を受け取り、最初の引数が2番目の引数よりも小さい場合はtrueを返し、そうでない場合はfalseを返します。
私は@Caribouの答えを、このようにそれを得た::
func ord(var a1, var a2):
if a1.y > a2.y:
return true
else:
return false
my_array.sort_custom(self, "ord")
私はC++を使用していないんだけど、私が使用している言語は私にこれを与える: ' 無効sort_custom(オブジェクトobj、String型のFUNC) ソートカスタムメソッドを使用してアレイ。引数は、メソッドとそのメソッドの名前を保持するオブジェクトです。カスタムメソッドは2つの引数(配列の要素のペア)を受け取り、最初の引数が2番目の引数よりも小さい場合はtrueを返し、そうでない場合はfalseを返します。 ' – PerduGames
私はこのようにそれを得た: ' FUNCのORD(VARのA1、VaRのA2): a1.y> a2.y場合: リターン他の真 : 偽 my_array.sort_custom(自己を、「返しますord ")' – PerduGames