js版数据结构与算法—5.4第K个最大值(1)

js版数据结构与算法—5.4第K个最大值(1) 

export default (arr, k) => {
   return arr.sort((a, b) => b - a)[k - 1]
}


import sort from '../../code/sort/lesson2'

test('sort:input 2', () => {
  expect(sort([3, 2, 1, 5, 6, 4], 2)).toBe(5)
})
test('sort:input 4', () => {
  expect(sort([3, 2, 3, 1, 2, 4, 5, 5, 6], 4)).toBe(4)
})

 利用冒泡的方法

export default (arr, k) => {
  let len = arr.length - 1
  for (let i = len, tmp; i > len - k; i--) {
    for (let j = 0; j < i; j++) {
      if (arr[j] > arr[j + 1]) {
        tmp = arr[j]
        arr[j] = arr[j + 1]
        arr[j + 1] = tmp
      }
    }
  }
  // arr[len+1-k]
  return arr[len - (k - 1)]
}

 

相关文章:

  • 2021-10-26
  • 2022-12-23
  • 2021-12-30
  • 2021-05-25
  • 2021-06-29
  • 2021-08-20
猜你喜欢
  • 2021-05-09
  • 2022-12-23
  • 2022-12-23
  • 2021-10-04
  • 2022-12-23
  • 2021-09-27
  • 2021-07-31
相关资源
相似解决方案