Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C++

Tìm điểm cố định (giá trị bằng chỉ số) trong mảng C++


Cho mảng, tìm chỉ số i sao cho arr[i] == i. Trả về i đầu tiên tìm thấy hoặc -1. Ví dụ: {10,20,30,40,50,5,60} → arr[5]=5 → trả về 5.

Phương pháp: Duyệt tuyến tính

  • Duyệt i từ 0 đến n-1, nếu arr[i] == i → trả về i.

Ví dụ mã nguồn

#include <bits/stdc++.h>
using namespace std;

int fixedPoint(int arr[], int n) {
    for (int i=0;i

Kết quả

5

Nếu mảng đã sắp xếp, có thể dùng binary search O(log n).