Rumah  >  Artikel  >  hujung hadapan web  >  #eetcode Gunakan Transformasi Pada Setiap Elemen dalam Tatasusunan

#eetcode Gunakan Transformasi Pada Setiap Elemen dalam Tatasusunan

WBOY
WBOYasal
2024-08-16 06:05:32272semak imbas

#eetcode Apply Transform Over Each Element in Array

Memandangkan arr tatasusunan integer dan fungsi pemetaan fn, kembalikan tatasusunan baharu dengan penjelmaan yang digunakan pada setiap elemen.

Array yang dikembalikan harus dibuat sedemikian rupa sehingga Array[i] = fn(arr[i], i).

Sila selesaikan tanpa kaedah Array.map terbina dalam.

Contoh 1:

Input: arr = [1,2,3], fn = fungsi tambah satu(n) { pulangan n + 1; }
Output: [2,3,4]
Penjelasan:
const newArray = peta(arr, plusone); // [2,3,4]
Fungsi ini meningkatkan setiap nilai dalam tatasusunan sebanyak satu.

Contoh 2:

Input: arr = [1,2,3], fn = fungsi tambahI(n, i) { return n + i; }
Output: [1,3,5]
Penjelasan: Fungsi meningkatkan setiap nilai mengikut indeks yang berada di dalamnya.

Contoh 3:

Input: arr = [10,20,30], fn = pemalar fungsi() { return 42; }
Output: [42,42,42]
Penjelasan: Fungsi sentiasa mengembalikan 42.

Kekangan:

  • 0 <= arr.length <= 1000
  • -10^9 <= arr[i] <= 10^9
  • fn mengembalikan nombor

Penyelesaian

/**
 * @param {number[]} arr
 * @param {Function} fn
 * @return {number[]}
 */
var map = function (arr, fn) {
    let newArr = [];

    for (let i = 0; i < arr.length; i++) {
        newArr[i] = fn(arr[i], i);
    }
    return newArr;
};

Panduan kod

peta var = fungsi (arr, fn) {
Ini adalah pengisytiharan fungsi. Fungsi peta mengambil argumen tunda, arr(susunan nombor) dan fn(fungsi yang akan digunakan pada setiap elemen tatasusunan).

biar newArr = [];
Cipta tatasusunan kosong untuk menyimpan elemen tatasusunan yang diubah.

untuk (biar i = 0; i < arr.length; i++)
Gelung melalui keseluruhan tatasusunan input

newArr[i] = fn(arr[i], i);
Menyemak sama ada setiap elemen tatasusunan dalam arr[i] memenuhi syarat yang ditentukan dan menyimpan hasilnya dalam tatasusunan kosong newArr

kembali newArr;
Mengembalikan tatasusunan yang baru dibuat yang mengandungi elemen yang diubah.

Atas ialah kandungan terperinci #eetcode Gunakan Transformasi Pada Setiap Elemen dalam Tatasusunan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn