Pythonで有効なMountainArray
整数の配列Aがあるとします。それが有効な山の配列であるかどうかを確認する必要があります。 Aは、次の状況を満たしている場合にのみ、山の配列であることがわかります-Aのサイズ> =3
Aには次のようなインデックスiが存在します-
したがって、入力が[0,3,2,1]のような場合、出力はTrueになります。
これを解決するには、次の手順に従います-
- サイズがA<3の場合、
- Falseを返す
- i:=1
- iA [i-1]の場合、
- i:=i + 1
- iが1と同じか、iがAのサイズと同じ場合、
- Falseを返す
- i
- i:=i + 1
理解を深めるために、次の実装を見てみましょう-
例
class Solution: def validMountainArray(self, A): if(len(A)<3): return False i = 1 while(i<len(A) and A[i]>A[i-1]): i+=1 if(i==1 or i==len(A)): return False while(i<len(A) and A[i]<A[i-1]): i+=1 return i==len(A) ob = Solution() print(ob.validMountainArray([0,3,2,1]))
入力
[0,3,2,1]
出力
True
-
ソートされた配列をPythonでマージ
2つの並べ替えられた配列AとBがあるとします。それらをマージして、1つの並べ替えられた配列Cのみを形成する必要があります。リストのサイズは異なる場合があります。 たとえば、A=[1,2,4,7]およびB=[1,3,4,5,6,8]とすると、マージされたリストCは[1,1,2,3,4、 4,5,6,7,8] これを解決するには、次の手順に従います- ifine i:=0、j:=0 and end:=length of A – 1 =0であり、A[end]ではありません。 end:=end – 1 whilej
-
与えられたサイズのグループで配列を逆にするPythonプログラム?
=1の場合、配列内のすべての要素を逆にします。 アルゴリズム Revarray(A,n,p) /* A is an integer Array, n is the size of an array and every sub-array of size p starting from the beginning of the array and reverse it.*/ Step 1: i is the loop control variable which is initialized by 0. Step 2: using while loop check i is less than