[Leetcodeアルゴリズム - 単に要素27を取り除きます]

説明[タイトル]

配列NUMSと値valを考えると、あなたはすべて同じ値valを削除するために要素を配置する必要があり、除去後の配列の長さを返します。

配列のための余分なスペースを使用しないでください、あなたは代わりに入力配列を変更し、使用のO(1)余分なスペースの条件の下で完了しなければなりません。

要素の順序を変更してもよいです。あなたは、新しい配列の長さの背後の要素を超えて検討する必要がありません。

 

例1:

所与NUMS = [3,2,2,3]、ヴァル= 3、

関数は、2の新しい長さを返す必要がありますし、最初の2つの要素のNUMSは2です。

あなたは、新しい配列の長さの背後の要素を超えて検討する必要がありません。


例2:

所与NUMS = [0,1,2,2,3,0,4,2]、ヴァル= 2、

新しい関数は、長さ5を返す必要があり、最初の5つの要素NUMSは0、1、3、0、4です。

これらの5つの要素は任意の順序であることに注意してください。

あなたは、新しい配列の長さの背後の要素を超えて検討する必要がありません。
説明:

なぜ、戻り値は整数ですが、答えは、それの出力の配列ですか?

入力アレイは、入力配列を変更することを意味する「参照」モードで渡されることに注意してくださいは、関数内の呼び出し元に表示されてください。

 

[回答]

  • Aソリューション:メソッド浮気のpython - のpythonによるが、()メソッドをポップ持っている、あなたが直接指定したインデックス位置にある要素を削除することができます....
DEF removeElement(自己、NUMS:リスト[整数]、ヴァル:INT) - > INT:
    私は = 0を
     しながら、私は< :(NUMS)lenの
         場合 NUMS [I] == :ヴァル
            nums.pop(I)
            I - = 1 
        iは + = 1つの
     戻り LEN(NUMS)

  ときに実行:32ms

 

  • 対処方法2:指のスピード
デフ removeElement(自己、NUMS:一覧の[int]は、ヴァルます。int) - > int型:
    遅い、速い = 0,0
     の高速< LEN(NUMS):
         もし NUMS [速い] =!:valの
            NUMS [遅い] = NUMS [速い] 
            遅い + = 1 
            、高速 + = 1
         
            速い + = 1
     の戻りが遅いです

  ときに実行:40msの

配列NUMSと値valを考えると、あなたはすべて同じ値valを削除するために要素を配置する必要があり、除去後の配列の長さを返します。

配列のための余分なスペースを使用しないでください、あなたは代わりに入力配列を変更し、使用のO(1)余分なスペースの条件の下で完了しなければなりません。

要素の順序を変更してもよいです。あなたは、新しい配列の長さの背後の要素を超えて検討する必要がありません。

 

例1:

所与NUMS = [3,2,2,3]、ヴァル= 3、

関数は、2の新しい長さを返す必要がありますし、最初の2つの要素のNUMSは2です。

あなたは、新しい配列の長さの背後の要素を超えて検討する必要がありません。


例2:

所与NUMS = [0,1,2,2,3,0,4,2]、ヴァル= 2、

新しい関数は、長さ5を返す必要があり、最初の5つの要素NUMSは0、1、3、0、4です。

これらの5つの要素は任意の順序であることに注意してください。

あなたは、新しい配列の長さの背後の要素を超えて検討する必要がありません。
説明:

なぜ、戻り値は整数ですが、答えは、それの出力の配列ですか?

入力アレイは、入力配列を変更することを意味する「参照」モードで渡されることに注意してくださいは、関数内の呼び出し元に表示されてください。

 

[回答]

  • Aソリューション:メソッド浮気のpython - のpythonによるが、()メソッドをポップ持っている、あなたが直接指定したインデックス位置にある要素を削除することができます....
DEF removeElement(自己、NUMS:リスト[整数]、ヴァル:INT) - > INT:
    私は = 0を
     しながら、私は< :(NUMS)lenの
         場合 NUMS [I] == :ヴァル
            nums.pop(I)
            I - = 1 
        iは + = 1つの
     戻り LEN(NUMS)

  ときに実行:32ms

 

  • 対処方法2:指のスピード
デフ removeElement(自己、NUMS:一覧の[int]は、ヴァルます。int) - > int型:
    遅い、速い = 0,0
     の高速< LEN(NUMS):
         もし NUMS [速い] =!:valの
            NUMS [遅い] = NUMS [速い] 
            遅い + = 1 
            、高速 + = 1
         
            速い + = 1
     の戻りが遅いです

  ときに実行:40msの

おすすめ

転載: www.cnblogs.com/xxx1206/p/11976755.html