タイトル説明
(同一の各一次元アレイの長さ)は、上から下に増加する順に、二次元アレイの各列を並べ替えるために、昇順ソートの順に左から右に、各行。完全な機能、例えば、二次元アレイと整数を入力し、配列の整数が含まれているか否かが判断されます。
パイソン:
1 #- * -コーディング:UTF-8 - * - 2 クラスのソリューション: 3 DEF 検索(セルフ、標的配列): 4 #、ライトコードここでは 5 行= LEN(アレイ)1 - 6 COL = LEN(配列[0 ]) - 1つの 7 R = 行 8 C = 0 9 つつ R> = 0 かつ C <= COL: 10 であれば目標< 配列[R] [C]: 11 R - = 1つの 12 ELIFの対象> 配列[R] [ C]: 13 C + = 1 14 他: 15 リターン真 16 リターン偽
アイデア:
アレイの最後の行の最初の要素を比較開始。
この要素よりも大きく、そしてちょうどその後、falseに列インデックス、一定の比較、そうでない場合が増加、この行を比較します。
以下の要素よりも、その後の比較で行から再起動し、その後、インデックスは、一定の比較、そうでない場合はfalseに増加しています。
に決定し、整数の場合:
ELIFターゲット> 配列[R] [C]: C + = 1
このステップは、状況は整数を見つけ、Trueを返すために最終的にので、整数値に等しくなければならない本の最初の発生の数よりも大きい整数に等しい数の存在を示す条件を満たしていません。