Python でのサブリストの存在の確認
ここでのタスクには、より大きなリスト内のサブリストの存在を確認する関数の作成が含まれます。次の例を考えてみましょう:
<code class="python">list1 = [1,0,1,1,1,0,0] list2 = [1,0,1,0,1,0,1] # Expected results: sublistExists(list1, [1,1,1]) == True sublistExists(list2, [1,1,1]) == False</code>
解決策:
Python の関数プログラミング機能を活用して、次の関数を定義できます:
<code class="python">def contains_sublist(lst, sublst): n = len(sublst) return any((sublst == lst[i:i+n]) for i in range(len(lst)-n+1))</code>
この解決策は、より大きなリスト (lst) を反復処理し、そのサブリスト (サブリストの長さ n に等しい長さ) を指定されたサブリスト (sublst) と比較することによって機能します。一致するものが見つかった場合、関数は True を返します。それ以外の場合、O(m*n) 回の操作 (m は lst の長さ、n は sublst の長さ) の後、関数は False を返します。
このアプローチでは、Python の効率的なリスト スライスと関数型プログラミングを利用します。を構築し、サブリストの存在を判断するための簡潔かつ効率的な手段を提供します。
以上が以下に、記事の本質を捉えた質問形式のタイトル オプションをいくつか示します。 * Python でサブリストの存在を効率的に判断するにはどうすればよいですか? * Python サブリスト検出: を使用した簡潔なソリューションの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。