Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonでのトリプレットサブシーケンスの増加


ソートされていない配列があるとします。その配列に長さ3の増加するサブシーケンスが存在するかどうかを確認する必要があります。

正式には、関数は-

  • i、j、kが存在する場合はtrueを返します
  • 0≤i

これを解決するには、次の手順に従います-

  • 小さい:=無限大、大きい:=無限大
  • 配列内の各要素iについて
    • i <=smallの場合はsmall:=i、それ以外の場合はi <=bigの場合はbig:=i、それ以外の場合はtrueを返します
  • falseを返す

理解を深めるために、次の実装を見てみましょう-

class Solution(object):
   def increasingTriplet(self, nums):
      small,big = 100000000000000000000,100000000000000000000
      for i in nums:
         if i <= small:
            small = i
         elif i<=big:
            big = i
         else :
            return True
      return False
ob1 = Solution()
print(ob1.increasingTriplet([5,3,8,2,7,9,4]))

入力

[5,3,8,2,7,9,4]

出力

True

  1. Pythonで複数の値を返しますか?

    Python関数は複数の値を返すことができます。これらの値は、変数に直接格納できます。関数は変数を返すように制限されていません。0、1、2、またはそれ以上の値を返すことができます。 これは、C++やJavaなどの他の多くのプログラミング言語では使用できない複数の値/変数を返すPythonのデフォルトのプロパティです。 関数から複数の値を返す場合は、要件に応じてタプル、リスト、またはディクショナリオブジェクトを返すことができます。 方法1:タプルを使用する def func(x):    y0 = x+ 1    y1 = x * 3   &

  2. Pythonで複数の値を返すにはどうすればよいですか?

    タプル、リスト、ディクショナリ、またはユーザー定義クラスのオブジェクトの形式で関数から複数の値を返すことができます タプルとして返す >>> def function():       a=10; b=10       return a,b >>> x=function() >>> type(x) <class 'tuple'> >>> x (10, 10) >>> x,y=function() >>&