[TIL 07.15]テストコード回答


📝ツールバーの


問題K個数

📍方法


1.i、j、k値の決定
  • i,j,kの値は、コマンド配列の数行目によって決定される
  • コマンド配列の行はコマンドの長さと等しい、行に基づいてi、j、kの値
  • を決定するために使用される.
    iからjへの配列のソート
  • 配列の最初の要素を最小値
  • に設定
  • 次の要素と比較して、値が最小値より小さい場合、値の最小値に対する位置を変更します:
  • .
  • 昇順に並ぶ
  • 3.配列された配列からk番目の数字を抽出する
  • 並べ替え配列のインデックスが[k-1]の数字を解答配列
  • に入れる.

    📍コード#コード#

    class Solution {
        public int[] solution(int[] array, int[][] commands) {
            int[] answer = new int[commands.length];
            
            for(int a = 0; a < commands.length; a++) {
                int i = commands[a][0];
                int j = commands[a][1];
                int k = commands[a][2];                        
                int[] temp = new int[j - i + 1];
            
                for(int index = 0; index < temp.length; index++) {
                    temp[index] = array[i-1];
                    i++;
                }
            
                int min = temp[0];
                for(int c = 0; c < temp.length; c++) {
                    for(int b = c+1; b < temp.length; b++) {
                        if(temp[c] > temp[b]) {
                            min = temp[b];
                            temp[b] = temp[c];
                            temp[c] = min;
                        }
                    }
                }
                answer[a] = temp[k -1];        
            }
            return answer;
        }
    }

    💡勉強する


    📍正しい概念が必要な部分


    たじゅうはいれつ


    1つ以上の1次元アレイをコンポーネントとするアレイ
  • 2 2 Dアレイ:アレイをコンポーネントとするアレイ
  • 3 Dアレイ:2 Dアレイをコンポーネントとするアレイ
  • 多次元配列

    int [][] x = new int[2][4];
    2行4列配列xの内部を図で表すとこうなります

    1.配列の名前(x)は配列そのものではなく、配列を参照する変数である.
    2.配列マスターを作成し、x参照を代入します.
  • で生成された配列はxによって参照され、各要素にアクセスする方法はx[0]、x[1]である.
  • この配列の構成部分乗数(長さ)は配列名(x)である.長さ
  • 3列のボリュームを生成し、x[0]を代入して参照します.
  • で生成された配列はx[0]によって参照され、各要素にアクセスする方法はx[0][0]、x[0][1]、x[0][2]である.
  • この配列の構成部分乗数(長さ)は配列名(x[0])である.長さ
  • 4列のボリュームを生成し、x[1]に代入して参照します.
  • で生成された配列はx[1]によって参照され、各要素にアクセスする方法はx[1][0]、x[1][1]、x[1][2]である.
  • この配列の構成部分乗数(長さ)は配列名(x[0])である.長さ
  • 📍問題に適用


    🙋‍♀️2 Dアレイ内の2 Dアレイの長さ/各要素の長さの差?
    2 Dタイリングコマンドの長さ
  • 配列変数コマンドで参照する配列本体の長さ(コンポーネント数)
  • 各要素の長さ
  • コマンドが参照する本体が参照する配列本体(コマンド[0]、コマンド[1]、コマンド[2])の長さ(構成要素湧出数)
  • .
    🙋2 D配列名.length=2 D配列の長さ??
    2 D配列名=配列自体ではなく配列本体を参照する変数
    commands.length=commandsが参照する配列の数
    コマンドは
  • コマンド[0]、コマンド[1]、コマンド[2]を参照するからである.length = 3