JavaScript: найдите k-й по величине элемент данного массива целых чисел
JavaScript Basic: Упражнение-90 с решением
Напишите программу на JavaScript, чтобы найти k-й по величине элемент данного массива целых чисел.
Иллюстрированная презентация:
Пример решения:
HTML-код:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>Find the kth greatest element of a given array of integers.</title>
</head>
<body>
</body>
</html>
Код JavaScript:
function Kth_greatest_in_array(arr, k) {
for (var i = 0; i < k; i++) {
var max_index = i,
tmp = arr[i];
for (var j = i + 1; j < arr.length; j++) {
if (arr[j] > arr[max_index]) {
max_index = j;
}
}
arr[i] = arr[max_index];
arr[max_index] = tmp;
}
return arr[k - 1];
}
console.log(Kth_greatest_in_array([1,2,6,4,5], 3))
console.log(Kth_greatest_in_array([-10,-25,-47,-36,0], 1))
Пример вывода:
4 0
Блок - схема:
Версия ES6:
function Kth_greatest_in_array(arr, k) {
for (let i = 0; i < k; i++) {
let max_index = i;
const tmp = arr[i];
for (let j = i + 1; j < arr.length; j++) {
if (arr[j] > arr[max_index]) {
max_index = j;
}
}
arr[i] = arr[max_index];
arr[max_index] = tmp;
}
return arr[k - 1];
}
console.log(Kth_greatest_in_array([1,2,6,4,5], 3))
console.log(Kth_greatest_in_array([-10,-25,-47,-36,0], 1))
Демонстрация в реальном времени:
См. Pen javascript-basic-упражнение-90 от w3resource ( @ w3resource ) в CodePen .
Внесите свой код и комментарии через Disqus.
Предыдущий: Напишите программу на JavaScript, чтобы проверить, можно ли заменить $ в данном выражении x $ y = z одним из четырех знаков +, -, * или /, чтобы получить правильное выражение.
Далее: Напишите программу на JavaScript, чтобы найти максимально возможную сумму некоторых из ее k последовательных чисел (чисел, следующих друг за другом по порядку.) Заданного массива натуральных чисел.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования