896. Monotonic Array

LeetCode easy original: C# #array #csharp #easy #leetcode
题目文本会按所选界面语言从俄语翻译;代码保持不变。

数组 является монотонным, если он либо монотонно возрастает, либо монотонно убывает. 数组 nums является монотонно возрастающим, если для всех i <= j, nums[i] <= nums[j]. 数组 nums является монотонно убывающим, если для всех i <= j, nums[i] >= nums[j]. Если задан 整数 数组 nums, return true, если данный 数组 монотонный, или false в противном случае.

示例:

Input: nums = [1,2,2,3]

Output: true

C# 解法

匹配/原始
public class Solution {
    public bool IsMonotonic(int[] nums) {
        bool increasing = true, decreasing = true;
        for (int i = 1; i < nums.Length; i++) {
            if (nums[i] > nums[i - 1]) decreasing = false;
            if (nums[i] < nums[i - 1]) increasing = false;
        }
        return increasing || decreasing;
    }

C++ 解法

自动草稿,提交前请检查
#include <bits/stdc++.h>
using namespace std;

// Auto-generated C++ draft from the C# solution. Review containers, LINQ and helper types before submit.
class Solution {
public:
    public bool IsMonotonic(vector<int>& nums) {
        bool increasing = true, decreasing = true;
        for (int i = 1; i < nums.size(); i++) {
            if (nums[i] > nums[i - 1]) decreasing = false;
            if (nums[i] < nums[i - 1]) increasing = false;
        }
        return increasing || decreasing;
    }

Java 解法

匹配/原始
class Solution {
    public boolean isMonotonic(int[] nums) {
        boolean increasing = true, decreasing = true;
        for (int i = 1; i < nums.length; i++) {
            if (nums[i] > nums[i - 1]) decreasing = false;
            if (nums[i] < nums[i - 1]) increasing = false;
        }
        return increasing || decreasing;
    }
}

JavaScript 解法

匹配/原始
var isMonotonic = function(nums) {
    let increasing = true, decreasing = true;
    for (let i = 1; i < nums.length; i++) {
        if (nums[i] > nums[i - 1]) decreasing = false;
        if (nums[i] < nums[i - 1]) increasing = false;
    }
    return increasing || decreasing;
};

Algorithm

Определить два флага: increasing и decreasing.

Пройтись по 数组у: Если текущий element больше следующего, установить increasing в false. Если текущий element меньше следующего, установить decreasing в false.

Вернуть true, если хотя бы один из флагов true, иначе вернуть false.

😎

Vacancies for this task

活跃职位 with overlapping task tags are 已显示.

所有职位
目前还没有活跃职位。