896. Monotonic Array

LeetCode easy original: C# #array #csharp #easy #leetcode
選択した UI 言語に合わせて問題文をロシア語から翻訳します。コードは変更しません。

配列 является монотонным, если он либо монотонно возрастает, либо монотонно убывает. 配列 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 表示.

すべての求人
有効な求人はまだありません。