Tìm chỉ mục của giá trị tối đa trong mảng JavaScript

Trong bài viết này, chúng ta sẽ thảo luận về các cách khác nhau để tìm giá trị lớn nhất trong một mảng và cả vị trí chỉ mục của nó

Mục lục

Mô tả vấn đề

Ở đây chúng ta được cung cấp một mảng và chúng ta phải tìm giá trị lớn nhất trong đó và vị trí chỉ mục của nó trong mảng

Đầu vào

quảng cáo

int arr[] = {12, 56, 823, 7, 1023};

đầu ra

Maximum value in given array is 1023 and its index is 4

Hãy xem cách chúng ta có thể làm điều đó bằng C++. Có ba phương pháp để tìm giá trị lớn nhất trong một mảng trong C++

Tìm giá trị tối đa trong mảng bằng cách sử dụng tuyến tính. Phương pháp lặp

Trong phương thức này, chúng ta sẽ lặp lại toàn bộ mảng

Đây là những bước sau

  • Đầu tiên tạo hai biến cục bộ index và max
  • Khởi tạo chỉ mục với -1 và tối đa với INT_MIN
  • Duyệt qua toàn bộ mảng
  • Nếu giá trị hiện tại lớn hơn max thì thay thế giá trị hiện tại bằng max
  • Cùng với nó, thay thế giá trị chỉ mục
  • In giá trị tối đa và chỉ mục

________số 8_______
Space Complexity: O(1)

Thí dụ

// C++ program to find maximum value and its index

#include 
#include 

using namespace std;

// Driver Code
int main()
{
    int arr[] = {12, 56, 823, 7, 1023};

    // n is the size of array 
    int n = sizeof(arr) / sizeof(arr[0]);

    //Intialize the value of max and index
    int max = INT_MIN;
    int index = -1;

    // Iterate the array
    for(int i=0;imax)
        {
            // If current value is greater than max
            // value then replace it with max value
            max = arr[i];
            index = i;
        }
    }

    cout << "Maximum value in given array is ";
    cout << max<<" and its index is "<< index <

đầu ra

Maximum value in given array is 1023 and its index is 4

Tìm giá trị lớn nhất trong Array bằng hàm STL max_element() và find()

Trong phương pháp này, chúng tôi sử dụng hai hàm STL để tìm giá trị lớn nhất và giá trị chỉ số của nó. chúng tôi sử dụng 2 chức năng STL sau

  1. Để tìm giá trị tối đa, hãy sử dụng max_element(). Nó trả về một trình vòng lặp hoặc địa chỉ có giá trị lớn nhất trong phạm vi
  2. Để tìm vị trí chỉ mục của một phần tử, hãy sử dụng find()

Đầu tiên tìm phần tử lớn nhất bằng cách sử dụng max_element() và sau đó tìm vị trí chỉ mục của nó bằng cách sử dụng find()

________số 8_______
Space Complexity: O(1)

Thí dụ

// STL Function to find maximum value and its index

#include 
#include 

using namespace std;

// Driver Code
int main()
{
    int arr[] = {12, 56, 823, 7, 1023};
    int n = sizeof(arr) / sizeof(arr[0]);

    // *max_element() will return the max value in array
    int max = *max_element(arr,arr+n);

    // now max variable contain maximum value
    // Now we have maximum value so we will find index of this max value by using find() function
    int index = find(arr, arr+n, max) - arr;

    cout << "Maximum value in given array is ";
    cout << max<<" and its index is "<< index <

đầu ra

Maximum value in given array is 1023 and its index is 4

Tìm giá trị lớn nhất trong mảng sử dụng max() & find()

Trong phương thức này, chúng ta sẽ lặp lại mảng cho đến ngay trước kích thước mảng (n-1)

Đây là các bước

  1. Đầu tiên tạo hai biến cục bộ index và max_value
  2. Khởi tạo chỉ mục với -1 và max_value với arr[0];
  3. Duyệt qua mảng cho đến size-1
    1. Sử dụng hàm max để tìm giá trị lớn nhất giữa 2 giá trị
    2. Sử dụng hàm find để tìm chỉ mục
  4. In giá trị tối đa và chỉ mục

________số 8_______
Space Complexity: O(1)

Thí dụ

// C++ program to find maximum value and its index

#include 
#include 

using namespace std;

// Driver Code
int main()
{
    int arr[] = {12, 56, 823, 7, 1023};
    int n = sizeof(arr) / sizeof(arr[0]);

    int max_value = arr[0];
    int index = -1;


    // Iterate the array
    for(int i=0;i

đầu ra

Maximum value in given array is 1023 and its index is 4

Tóm lược

Chúng ta đã thấy ba phương pháp để tìm giá trị lớn nhất trong một mảng và cả vị trí chỉ mục của nó. Một là giải pháp ngây thơ. Một người khác đang sử dụng các chức năng STL. Mọi Phương thức đều có độ phức tạp Thời gian và độ phức tạp không gian riêng