LeetCode 775 题解

https://leetcode.com/problems/global-and-local-inversions/description/

题目大意:给出了一个序列,两个定义一个是全局逆序,一个是局部逆序,问这个序列能否保证全局逆序和局部逆序数目相同。全局逆序和逆序的概念一样,局部逆序是指连续的两个数i,i+1 A[i]>A[i+1] 就是逆序。

解题思路:考虑暴力做法,每个数字只能比其后面的数字大的个数不能大于1,每个数字不能比其前面的数字小的个数大于1,复杂度是n^2,暴力的做法会超时。

翻译一下这句话其实就是,每个数字和其当前位置的偏移绝对值不能超过1.

class Solution {
    public boolean isIdealPermutation(int[] A) {
        int n = A.length;
        for(int i=0;i<n;i++)
        {
            if( Math.abs(i-A[i])>1) return false;
        }
        return true;
    }
}

猜你喜欢

转载自blog.csdn.net/u011439455/article/details/80525637