Giả sử chúng ta có một mảng A gồm các số nguyên duy nhất được sắp xếp theo thứ tự tăng dần, chúng ta phải trả về chỉ số i nhỏ nhất thỏa mãn A [i] ==i. Trả về -1 nếu không có i như vậy tồn tại. Vì vậy, nếu mảng giống như [-10, -5,0,3,7], thì đầu ra sẽ là 3, như A [3] =3 thì đầu ra sẽ là 3.
Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -
- Đối với tôi trong phạm vi từ 0 đến độ dài của A
- nếu i =A [i], thì trả về i
- trả về -1
Ví dụ (Python)
Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -
class Solution(object): def fixedPoint(self, A): for i in range(len(A)): if i == A[i]: return i return -1 ob1 = Solution() print(ob1.fixedPoint([-10,-5,0,3,7]))
Đầu vào
[-10,-5,0,3,7]
Đầu ra
3