Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

179
Views
Rotar la matriz por d elementos en JavaScript

Escribí un código para rotar una matriz 1-D por d elementos, pero me pregunto si hay alguna forma más corta de escribir este código. por ejemplo:

 arr = [1,2,3,4,5,6,7] , d = 3 newArr = [4,5,6,7,1,2,3]
 const arrayRotation=(arr,d)=>{ var k = arr.slice(d) var m = new Set(k) var diff = ([...arr].filter(x=>!m.has(x))) return k.concat(diff) }

Tuve que usar Set para poder filtrar la diferencia entre 2 matrices. ¿Hay alguna manera mejor (en cuanto a la complejidad) para resolver este problema?

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Puede usar slice dos veces y concatenar los subarreglos:

 const arr = [1,2,3,4,5,6,7], d = 3; const newArr = [...arr.slice(d % arr.length), ...arr.slice(0, d % arr.length)]; console.log(newArr);

about 4 years ago · Juan Pablo Isaza Report

0

Suponiendo que D es positivo, puede usar el índice para mapear idx antiguo => idx nuevo.

 const arr = [1,2,3,4,5,6,7] const rot = 3; const newArr = arr.map((el, idx) => arr[(idx+rot)%arr.length]) console.info(newArr); >>> [4,5,6,7,1,2,3]
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!