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

最大数が1の行を検索するPythonマップ関数


このチュートリアルでは、マップを使用して、行列から最大数が1の行を検索するプログラムを作成します。 機能。

次の行列があるとしましょう。

行列=[[0、0、1]、[1、1、1]、[1、1、0]]

プログラムはさまざまな方法で作成できます。ただし、マップを使用する 機能については、以下の手順に従います。

  • マトリックスを初期化します。
  • マップを使用して、すべての行の1の数を見つけます 働き。それらをリストに保存します。
  • リストから最大値を印刷します。

## initializing the matrix
matrix = [
   [0, 0, 1],
   [1, 1, 1],
   [1, 1, 0]
]
## function to find number of 1's in a row
def number_of_ones(row):
   count = 0
   for i in row:
      if i is 1:
         count += 1
   return count
## finding the number of 1's in every row
## map returns an object which we converted into a list 
ones_count = list(map(number_of_ones, matrix))
## printing the index of max number from the list 
print(ones_count.index(max(ones_count)))

出力

上記のプログラムを実行すると、次の結果が得られます。

1

プログラムについて疑問がある場合は、コメントセクションにその旨を記載してください。


  1. Pythonを使用して、同じラベルを持つサブツリー内のノードの数を見つけるプログラム

    ノードに0からn-1までの番号が付けられたn個のノードを持つルート化された一般ツリーがあるとします。各ノードには、小文字の英字のラベルがあります。ラベルはlabels配列の入力として指定されます。ここで、lables[i]にはi番目のノードのラベルが含まれています。ツリーはエッジリストで表され、各エッジeには[u、v]があり、uは親、vは子を表します。サイズnの配列Aを見つける必要があります。これは、iと同じラベルを持つi番目のノードのサブツリー内のノードの数を表します したがって、入力が次のような場合 ここで、n =5およびlabel=“ ccaca” ルートには同じラベルの子

  2. 行列の転置を見つけるPythonプログラム

    この記事では、特定の問題ステートメントを解決するための解決策とアプローチについて学習します。 問題の説明 行列が与えられた場合、転置を同じ行列に格納して表示する必要があります。 行列の転置は、行を列に、列を行に変更することで得られます。つまり、A行列の転置はA[i][j]をA[j][i]に変更することで得られます。 以下に示す実装を見てみましょう- 例 N = 4 def transpose(A):    for i in range(N):       for j in range(i+1, N):     &nbs