2.ソート-Kビット数
テストで選択されます.最初に考えたのは、数がcommandsの[5,1,3]のようにstartIndex>endIndexなどの突発的な場合です.あるいは、パラメータとして10の長さの配列が入力されると、その配列の長さはインデックス値を超えます.(例えば「15番目の要素を求める」...)
しかし、正解は問題のトピックに対するソート関数です.そこで,mdnにおけるsort関数の内容を調べ,javascriptでソート関数をどのように記述すべきかを理解した.
実際の内容はこれより長いです.sortでは、配列内の2つの要素の比較関数をどのように比較するか、および挿入されていないときにどのようにソートするかについて、原文で詳細に説明しています.
compareFunctionを個別に定義しない場合、未定義配列の要素はすべてUTF-16コード定義の文字列に変換され、順番に並べ替えられます.このルールでは、80は9よりもむしろ小さい.90と9を比較するのではなく、「80」と「9」を比較するからです.
だから昇順で比較したいならsort(a,b)=>a-bと書くことができます.これはjavascript内蔵関数で、2つの要素を比較すると、大きな要素が後方に送信されます. Array.prototype.sort() -
( https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort )
しかし、正解は問題のトピックに対するソート関数です.そこで,mdnにおけるsort関数の内容を調べ,javascriptでソート関数をどのように記述すべきかを理解した.
実際の内容はこれより長いです.sortでは、配列内の2つの要素の比較関数をどのように比較するか、および挿入されていないときにどのようにソートするかについて、原文で詳細に説明しています.
compareFunctionを個別に定義しない場合、未定義配列の要素はすべてUTF-16コード定義の文字列に変換され、順番に並べ替えられます.このルールでは、80は9よりもむしろ小さい.90と9を比較するのではなく、「80」と「9」を比較するからです.
だから昇順で比較したいならsort(a,b)=>a-bと書くことができます.これはjavascript内蔵関数で、2つの要素を比較すると、大きな要素が後方に送信されます.
function solution(array, commands) {
var answer = [];
commands.forEach((command)=>{
answer.push(array.slice(command[0]-1,command[1]).sort((firstNum,secondNum)=>firstNum-secondNum)[command[2]-1]);
})
return answer;
}
arr = [1,2,10]
arr.sort()
arr.sort((firstNum,secondNum)=>firstNum-secondNum)
... ... ... ... ... ... ... ... ... ... ... ...
>> [1,10,2] //
>> [1,2,10] //
References
( https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort )
Reference
この問題について(2.ソート-Kビット数), 我々は、より多くの情報をここで見つけました https://velog.io/@hion8800/2.-정렬-K번째수テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol