Massivdə elementlərin sırasını necə dəyişdirmək olar?
sobes.tech Süni İntellekt
AI-dan cavab
Massivdəki elementlərin ardıcıllığını dəyişdirmək üçün bir neçə yanaşma istifadə oluna bilər:
-
reverse(): Massivi yerində dəyişdirir, elementlərin ardıcıllığını tərsinə çevirir.const arr = [1, 2, 3, 4, 5]; arr.reverse(); // arr indi [5, 4, 3, 2, 1] -
sort(): Massivi yerində sıralayır. Əsasən, mətn kimi sıralayır. Rəqəmsal sıralama üçün müqayisə funksiyası keçirmək lazımdır.const arr = [3, 1, 4, 1, 5, 9, 2, 6]; arr.sort(); // Standart sıralama (mətn kimi) // arr indi [1, 1, 2, 3, 4, 5, 6, 9] const arrNum = [3, 1, 4, 1, 5, 9, 2, 6]; arrNum.sort((a, b) => a - b); // Artan sıralama // arrNum indi [1, 1, 2, 3, 4, 5, 6, 9] arrNum.sort((a, b) => b - a); // Azalan sıralama // arrNum indi [9, 6, 5, 4, 3, 2, 1, 1] -
Yeni massiv yaratmaq və ardıcıllığı dəyişdirmək: Əgər orijinal massivə təsir etmək istəmirsinizsə, metodların kombinasiyasını istifadə edə bilərsiniz.
-
reverse()ilə nüsxə:const arr = [1, 2, 3, 4, 5]; const reversedArr = [...arr].reverse(); // Nüsxə yaradıb tərsinə çeviririk // reversedArr indi [5, 4, 3, 2, 1] // arr dəyişmir [1, 2, 3, 4, 5] -
sort()ilə nüsxə:const arr = [3, 1, 4, 1, 5]; const sortedArr = [...arr].sort((a, b) => a - b); // Nüsxə yaradıb sıralayırıq // sortedArr indi [1, 1, 3, 4, 5] // arr dəyişmir [3, 1, 4, 1, 5] -
İstənilən ardıcıllıq (daha mürəkkəb vəziyyət): Əgər xüsusi bir ardıcıllıq tələb olunursa, sadə sıralama və ya tərsinə çevirmə nəticəsindən başqa, elementləri əl ilə yenidən yerləşdirmək və ya daha mürəkkəb alqoritmlər istifadə etmək lazım ola bilər. Məsələn, qarışdırma (shuffle):
const arr = [1, 2, 3, 4, 5]; const shuffledArr = [...arr]; for (let i = shuffledArr.length - 1; i > 0; i--) { const j = Math.floor(Math.random() * (i + 1)); [shuffledArr[i], shuffledArr[j]] = [shuffledArr[j], shuffledArr[i]]; // Elementləri dəyişdiririk (destructuring) } // shuffledArr indi təsadüfi qarışıb // arr dəyişmir [1, 2, 3, 4, 5]
-
Seçim metoddan asılıdır: istənilən nəticə (əks ardıcıllıq, sıralama, təsadüfi ardıcıllıq) və orijinal massivə təsir etmək və ya yeni massiv yaratmaq istəyinizə.