Javascript
 Computer >> コンピューター >  >> プログラミング >> Javascript

JavaScriptの配列から最初の重複番号を返します


配列に少なくとも2回出現する最初の要素のインデックスを返す関数を作成する必要があります。要素が2回以上表示されない場合は、-1を返す必要があります。条件は、一定のスペースで(つまり、余分なメモリを使用せずに)これを実行する必要があることです。

この問題の解決策を考えてみましょう。 forループを使用して配列を反復処理し、Array.prototype.lastIndexOf()メソッドを使用して重複をチェックします。

const firstDuplicate = arr => {
   for(let i = 0; i < arr.length; i++){
      if(arr.lastIndexOf(arr[i]) !== i){
         return i;
      };
   };
   return -1;
}
console.log(firstDuplicate([3, 5, 6, 8, 5, 3])); // 0
console.log(firstDuplicate([0, 1, 2, 3, 4, 4, 5])); // 4
console.log(firstDuplicate([0, 1, 1, 2, 3, 4, 4, 5])); // 1
console.log(firstDuplicate([0, 1, 2, 3, 4, 9, 5])); // -1

出力

コンソールの出力は-

になります
0
4
1
-1

  1. JavaScriptの配列から最大数を構築する

    最初で唯一の引数として数値の配列を受け取るJavaScript関数を作成する必要があります。 関数は、配列に存在する数値をつなぎ合わせて、指定された数値のセットから形成できる最大の数値を形成する必要があります。 例- 入力配列が-の場合 const arr = [5, 45, 34, 9, 3]; その場合、出力は-になります。 const output = '9545343'; 例 以下はコードです- const arr = [5, 45, 34, 9, 3]; const largestNumber = (arr = []) => {   &nbs

  2. JavaScriptで配列内の最初の連続していない番号を見つける

    問題 数値の配列を受け取るJavaScript関数を作成する必要があります。関数は、前の要素の自然な後継ではない配列から最初の要素を返す必要があります。 これは、配列にそのような要素が少なくとも1つ存在する場合、前の要素の+1ではない要素を返す必要があることを意味します。 例 以下はコードです- const arr = [1, 2, 3, 4, 6, 7, 8]; const findFirstNonConsecutive = (arr = []) => {    for(let i = 0; i < arr.length - 1; i++){