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

JavaScriptで引用のh指数を計算する


特定の研究者が一定期間に行った引用の数を表す正の整数の配列があるとします。

そのような配列を1つ取り込むJavaScript関数を作成する必要があります。関数は、配列によって表される引用データに基づいて、その研究者のh指数を見つける必要があります。

H指数:

彼のキャリアの中でN回の引用を行った研究者を考えてみてください。次に、研究者は、N個の論文のh個にそれぞれ少なくともh個の引用があり、他のN −h個の論文にそれぞれh個以下の引用がある場合にインデックスhを持ちます。

例-

引用配列が-

の場合
const arr = [1, 6, 3, 0, 5];

このデータは、研究者が合計5つの論文を持っており、それぞれが1、6、3、0、5回の引用を受けたことを示しています。

また、研究者はそれぞれ3回以上の引用がある3つの論文を持っており、残りの2つはそれぞれ3回以下の引用があるため、h指数は3です。

したがって、この配列の出力は-

になります。
const output = 3;

以下はコードです-

const arr = [1, 6, 3, 0, 5];
const findHIndex = (arr = []) => {
   let possible = [];
   let { length: len } = arr;
   if (len === 0){
      return 0;
   };
   possible.length = len + 2;
   possible = possible.join('-').split('').map(() => 0);
   for (let i = 0; i < len; i ++) {
      let val = arr[i];
      let ind = val > len ? len : val;
      possible[ind] += 1;
   }
   let result = 0;
   for (let k = len; k >= 0; k --) {
      result += possible[k];
      if (result >= k) {
         return k;
      }
   }
};
console.log(findHIndex(arr));

出力

以下はコンソール出力です-

3

  1. JavaScriptで配列の中央値を計算する

    以下は、JavaScriptで配列の中央値を計算するためのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style> &nbs

  2. JavaScriptで配列の平均を計算する

    以下は、JavaScriptで配列の平均を計算するためのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style>