TGViewer
CodeRoll | Frontend CodeRoll | Frontend @coderoll · 4.07K subscribers
Post #2783 988
👩‍💻👩‍💻 Как выглядит алгоритм гномьей сортировки на JavaScript?

Алгоритм находит первое место, где два соседних элемента стоят в неправильном порядке и меняет их местами



const gnomeSort = (arr: number[]): number[] => {
if (arr.length <= 1) {
return arr
}

let i: number = 1

while (i < arr.length) {
if (arr[i - 1] <= arr[i]) {
i++ //increment index if sub-array[0:i] already sorted
} else {
;[arr[i], arr[i - 1]] = [arr[i - 1], arr[i]] //swapping two numbers
i = Math.max(1, i - 1) //go back to the previous index to check the swapped number
}
}
return arr
}


Coderoll | Frontend
  • ❤ 1
More from @coderoll
  1. Oct 13, 2026Hero Patterns Онлайн-коллекция готовых к использованию SVG-фонов, которые легко интегриров…
  2. Oct 12, 20265 офферов получили наши ребята на прошлой неделе Оффер на 4,2k долларов Оффер на 5k евро О…
  3. Oct 12, 2026Сервис-генератор фона с градиентом Хороший сервис, который способен генерить фоны из неско…
  4. Oct 11, 2026MediaElement.js JavaScript-библиотека для добавления HTML5 видео- и аудиоплеера на сайт. �…
  5. Oct 10, 2026❓ Что такое замыкание (closure) в JavaScript? Ответ: Замыкание — это функция, которая имее…
  6. Oct 9, 2026❓Что такое Lazy Loading? Lazy Loading — это техника отложенной загрузки ресурсов (например…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →