Hướng dẫn kth largest element in an array javascript - phần tử lớn thứ k trong một javascript mảng

Cập nhật lần cuối vào ngày 19 tháng 8 năm 2022 21:50:49 [UTC/GMT +8 giờ]

JavaScript Basic: Tập thể dục-90 với giải pháp

Viết một chương trình JavaScript để tìm ra yếu tố lớn nhất của một số nguyên nhất định.

Trình bày bằng hình ảnh:

Giải pháp mẫu:

Mã HTML:




  
  
  Find the kth greatest element of a given array of integers.






Mã 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]]

Đầu ra mẫu:

4
0

Sơ đồ:

Phiên bản 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]]

Bản thử trực tiếp:

Xem bút JavaScript-Basic-exercise-90 của W3Resource [@W3Resource] trên Codepen.

Đóng góp mã và nhận xét của bạn thông qua Disqus.

Trước đó: Viết chương trình JavaScript để kiểm tra xem có thể thay thế $ trong một biểu thức đã cho x $ y = z bằng một trong bốn dấu hiệu +, -, * hoặc / để có được biểu thức chính xác hay không. Tìm tổng tối đa có thể của một số số K liên tiếp của nó [các số theo nhau theo thứ tự.] Của một loạt các số nguyên dương nhất định. Write a JavaScript program to check whether it is possible to replace $ in a given expression x $ y = z with one of the four signs +, -, * or / to obtain a correct expression.
Next: Write a JavaScript program to find the maximum possible sum of some of its k consecutive numbers [numbers that follow each other in order.] of a given array of positive integers.

JavaScript: Lời khuyên trong ngày

Chỉ mục cụ thể trong một chuỗi

console.log['I want burger'[0]];

Để có được một ký tự trên một chỉ mục cụ thể trong một chuỗi, bạn có thể sử dụng ký hiệu khung. Ký tự đầu tiên trong chuỗi có chỉ mục 0, v.v. Trong trường hợp này, chúng tôi muốn lấy phần tử nào chỉ mục là 0, ký tự "i ', được ghi lại. Lưu ý rằng phương pháp này không được hỗ trợ trong IE7 trở xuống. Trong trường hợp đó, sử dụng .charat []
Note that this method is not supported in IE7 and below. In that case, use .charAt[]

Tham khảo: //bit.ly/3jfrbje

Làm việc trên LeetCode này: Yếu tố lớn nhất KTH.

Đây là mã JS của tôi:

var findKthLargest = function[n, k] {
    // largest at 1st
    global.arr = new Array[k].fill[false];

    // loop n
    for[let i=0; i=0; i--] {
        // not set OR > curr, < prev
        if[arr[i] === false || n > arr[i]] {

            console.log['before s', arr];

            shift[i, n];
            return; // need to get out now, otherwise keep overwriting

            console.log['after s', arr];
        }    
    }    
}

// n single #
var shift = function[ind, n] {
    // n > arr[ind]
    // e.g. 6 in, [3, 4, 5, 7], ind == 2, 
    // 7 intact, 4 overwrite 3, 5 overwrite 4, 6 overwrite 5
    let i;
    for[i=1; i

Chủ Đề