数据结构和算法前端大杂烩

每日一算法:选择排序

2022-07-23  本文已影响0人  lio_zero

选择排序是一个很容易理解排序算法。

思路

JavaScript 实现

使用选择排序算法对数字数组进行排序。

const selectionSort = (arr) => {
  const list = [...arr]
  for (let i = 0; i < list.length; i++) {
    const min = list
      .slice(i + 1)
      .reduce((acc, val, j) => (val < list[acc] ? j + i + 1 : acc), i)
    if (min !== i) [list[i], list[min]] = [list[min], list[i]]
  }
  return list
}

selectionSort([5, 1, 4, 2, 3]) // [1, 2, 3, 4, 5]

此示例来自 30 seconds of code 的 selectionSort

更多资料

Selection Sort

上一篇 下一篇

猜你喜欢

热点阅读