Python

 Computer >> コンピューター >  >> プログラミング >> Python
  1. Pythonで最も水が多いコンテナ

    n個の非負の整数a1、a2、...、anのセットがあり、各値は座標(i、a [i])の点を表しているとします。 n本の垂直線は、線iの2つの端点が(i、a [i])と(i、a [0])にあるように存在します。 x軸と一緒に1つのコンテナを形成する2つの線を見つける必要があるため、水量が最大になる2つの列を見つけることが目標です。したがって、配列が[1,8,6,2,5,4,8,3,7]の場合、次のようになります 影付きの部分では、高さが7で、セクションが7つあるため、合計面積は実際には7 * 7=49です。これが出力です。 これを解決するために、次の手順に従います 低:=0、高:=a

  2. 3Pythonでの合計

    数値の配列があるとします。これはn個の整数を格納し、配列にはa + b + c =0のような要素a、b、cがあります。状況を満たす配列内のすべての一意のトリプレットを見つけます。したがって、配列が[-1,0,1,2、-1、-4]の場合、結果は[[-1、1、0]、[-1、-1、2]]になります これを解決するには、次の手順に従います- 配列番号を並べ替えて、配列解像度を定義します 0からnumsの長さの範囲のiの場合– 3 0かつnums[i]=nums [i-1]の場合、次の部分をスキップして続行します l:=i + 1およびr:=numsの長さ– 1 while l

  3. Pythonでの電話番号の文字の組み合わせ

    2〜9の数字を含む文字列があるとします。数字が表す可能性のあるすべての文字の組み合わせを返す必要があります。数字から文字への1つのマッピング(電話ボタンの場合と同様)を以下に示します。 1はどの文字にもマップされないことに注意してください。 1 2 a b c 3 d e f 4 g h i 5 j k l 6 m n o 7 p q r s 8 t u v 9 w x y z * 0 # たとえば、指定された文字列が「23」の場合、可能な文字列は[「ad」、「ae」、「af」、「bd」、「

  4. Pythonでリストの最後からN番目のノードを削除する

    リンクリストがあるとします。リストの最後からN番目のノードを削除してから、そのヘッドを返す必要があります。したがって、リストが[1、2、3、4、5、6]のようで、n =3の場合、返されるリストは[1、2、3、5、6]になります。 これを解決するには、次の手順に従います- ヘッドの後にノードがない場合は、Noneを返します フロント:=ヘッド、バック:=ヘッド、カウンター:=0、ファウント:=false while counter <=n フロントが存在しない場合は、フラグをtrueに設定し、ループから抜け出します フロント:=フロントの次、カウンターを1増やします フロントが存在す

  5. Pythonで括弧を生成する

    値nがあるとします。 n個の開き括弧と閉じ括弧が存在するすべての可能な整形式括弧を生成する必要があります。したがって、n =3の値の場合、括弧セットは[()()()、 ()(())、 (())()、 (()())になります。 、((())) ] これを解決するには、次の手順に従います- genParenthesisRec()というメソッドを定義します。これは、左、右、一時文字列と結果配列を取ります。最初は結果の配列が空です 関数genParenthesisRecは、次のように機能します left =0およびright:=0の場合、結果にtempを挿入し、戻ります 0 getParen

  6. Pythonで回転した並べ替えられた配列を検索する

    配列が昇順で並べ替えられており、事前に不明なピボットで回転していると考えてください。たとえば、[0,1,2,4,5,6,7]は[4,5,6,7,0,1,2]になります。検索にターゲット値を指定しました。配列で取得できる場合はそのインデックスを返し、そうでない場合は-1を返します。配列に重複が存在しないと想定できます。したがって、配列が[4,5,6,7,0,1,2]のような場合、この要素のインデックスはインデックス4に存在するため、出力は4になります。 これを解決するには、次の手順に従います- 低:=0および高:=配列の長さ 低い<高い midをmidとして見つける:=low +(high-

  7. Pythonでソートされた配列の要素の最初と最後の位置を見つける

    整数Aの配列があるとします。これは昇順で並べ替えられ、指定されたターゲット値の開始位置と終了位置を見つける必要があります。配列内にターゲットが見つからない場合は、[-1、-1]を返します。したがって、配列が[2,2,2,3,4,4,4,4,5,5,6]のようで、ターゲットが4の場合、出力は[4,7]になります。 これを解決するには、次の手順に従います- 最初はres:=[-1、-1]、low:=0、high:=配列Aの長さに設定 低い<高い 中:=低+(高–低)/ 2 A [mid]がターゲットの場合、 high:=mid、res [0]:=mid、res [1]:=mid そ

  8. Pythonで有効な数独

    9x9の数独ボードが1つあるとします。それが有効か今かを確認する必要があります。次のルールに従って、塗りつぶされたセルのみを検証する必要があります- 各行には、繰り返しなしで1〜9の数字が含まれている必要があります。 各列には、繰り返しなしで1〜9の数字が含まれている必要があります。 グリッドの9つの(3x3)サブボックスのそれぞれには、繰り返しなしで1〜9の数字が含まれている必要があります。 数独グリッドが-のようなものだとします 5 3 7 6 1 9 5 9 8

  9. C++で文字列を乗算する

    文字列として2つの数字があるとします。それらを乗算し、結果を文字列で返す必要があります。したがって、数値が「26」と「12」の場合、結果は「312」になります これを解決するには、次の手順に従います- 2つの引数xとyを取ると、xがyを除算することを示します x<-Infinityおよびy=1の場合、無限大を返します a:=| x |、b:=| y |およびans:=0 =0 p:=0 =0 p:=p + 1 a:=a –(左シフトb、p回) ans:=ans+左シフト1p回 0も真の場合は、ansを返します。それ以外の場合は、(– ans)を返します。

  10. Pythonの順列

    個別の整数のコレクションがあるとします。考えられるすべての順列を見つける必要があります。したがって、配列が[2,1,3]のような場合、結果は[[1,2,3]、[1,3,2]、[2,1,3]、[2,3,1]になります。 ]、[3,1,2]、[3,2,1]] これを解決するには、次の手順に従います- 再帰的アプローチを使用します。これにより、リスト、開始、curr、およびresが作成されます リストの長さ– 1を開始する場合は、解像度にcurrを追加して、戻ります 指定されたリストの長さの範囲内のiの場合– 1 インデックスの開始と(開始+(i –開始))に存在するリストの要素を交換します

  11. Pythonで画像を回転する

    1つの画像を表す1つの2D行列があるとします。この画像を時計回りに90度回転させる必要があります。したがって、画像が次のような場合 1 5 7 9 6 3 2 1 3 次に、出力は次のようになります 2 9 1 1 6 5 3 3 7 これを解決するには、次の手順に従います- temp_mat =[]、col:=マトリックスの長さ–1を検討してください 範囲0から行列の長さの列の場合 temp:=[] マトリックスの範囲の長さの行の場合–1から-1まで tempにmatr

  12. Pythonでのグループアナグラム

    文字列のセットがあるとします。アナグラムをグループ化する必要があります。したがって、[eat、 tea、 tan、 ate、 nat、 bat]の場合、グループは[[ate、 eat、 tea]、[ nat 、 tan ]、[ bat ]] これを解決するには、次の手順に従います- 解像度をマップとして定義 文字列配列のfori x:=xと結合、ソートされたiの文字列 結果のxの場合 結果にiを挿入[x] その他の結果[x]:=[i] resの値をリストとして返す 例(Python) 理解を深めるために、次の実装を見てみましょう- class Solution:  

  13. PythonのPow(x、n)

    入力xとnが2つあるとします。 xは-100.0から100.0の範囲の数値であり、nは32ビットの符号付き整数です。ライブラリ関数を使用せずに、xのn乗を見つける必要があります。 したがって、指定された入力がx =12.1、n =-2の場合、出力は0.00683になります。 これを解決するには、次の手順に従います- power:=| n |およびres:=1.0 電力が0ではない場合 パワーの最後のビットが1の場合、res:=res * x x:=x * x n<0の場合 return 1 / res return res 例(Python) 理解を深めるため

  14. Pythonで色を並べ替える

    n個のオブジェクトを含む配列があるとします。これらは赤、白、または青の色で、同じ色のオブジェクトが隣接するように所定の位置に並べ替えます。つまり、色は赤、白、青の順になります。ここでは、0、1、2などの数字を使用して、それぞれ赤、白、青の色を表します。したがって、配列が[2,0,2,1,1,0]のような場合、出力は[0,0,1,1,2,2]になります。 これを解決するには、次の手順に従います- 低:=0、中:=0、高:=配列の長さ– 1 中<=高 arr [mid] =0の場合、arr[mid]とarr[low]を入れ替えて、lowとmidを1増やします それ以外の場合、arr [mid

  15. C++での組み合わせ

    2つの整数nとkがあるとします。 1...nからk個の可能なすべての組み合わせを見つける必要があります。したがって、n=4およびk=2の場合、組み合わせは[[1,2]、[1,3]、[1,4]、[2,3]、[2,4]、[3,4 ]] これを解決するには、次の手順に従います- これを解決するために再帰関数を使用します。関数solve()は、n、k、一時配列を取得して開始します。開始は最初は1です。これは次のように動作します temp配列のサイズ=kの場合、tempをres配列に挿入し、戻ります for i:=start to n、 iを一時的に挿入 solve(n、k、temp、i + 1

  16. Pythonでウェイをデコードする

    AからZまでの文字を含むメッセージが、次のマッピングを使用して数字にエンコードされているとします-A→1、B→2...Z→ 26.したがって、数字のみを含む空でない文字列が1つある場合、デコードできる方法がいくつあるかを見つける必要があります。したがって、文字列が「12」のような場合、それは「AB」または「L」から作成できるため、2つの方法が考えられます。したがって、答えは2になります。 これを解決するには、次の手順に従います- 動的計画法を使用してこれを解決します。 n:=sの長さ dp:=0の数がnの配列 s [0]が「0」でない場合、dp [0]:=1 1からn–1の範囲のi

  17. Pythonでの二分木順序トラバーサル

    二分木があるとします。再帰を使用せずに、順序どおりのトラバーサルスキームを使用してこのツリーをトラバースする必要があります。したがって、ツリーが次のような場合 その場合、トラバーサルは[2,5,7,10,15,20]になります。 これを解決するには、次の手順に従います- 2つの配列resとスタックを作成し、curr:=rootを設定します 1つの無限ループを実行します 現在がnullではない場合 currをスタックにプッシュし、curr:=currの左側に設定します スタックの長さが0の場合、resを返します node:=スタックからポップされた要素 ノードの値をresに

  18. Pythonでのワードブレイク

    空でない文字列が1つと辞書wordDictがあるとします。これには、空でない単語のリストが含まれています。sを1つ以上の辞書単語のスペースで区切られたシーケンスにセグメント化できるタイミングを決定します。いくつかのルールに従う必要があります- 辞書内の同じ単語は、セグメンテーションで複数回再利用される可能性があります。 辞書に重複する単語が含まれていないと想定できます。 文字列s=“ applepenapple”で、単語辞書が[“ apple”、“ pen”]のようなものであるとすると、文字列sは“ apple pen apple”としてセグメント化できるため、出力はtrueになります。

  19. Pythonで最大の数

    負でない整数のリストがあるとすると、それらが最大数になるように配置する必要があります。したがって、配列が[10、2]の場合、最大数は210になります。 これを解決するには、次の手順に従います- この数字の配置のように、最上位桁が最初に配置するよりも大きい数字を配置します。その後、配列の数値を結合するだけです。 例 理解を深めるために、次の実装を見てみましょう- from functools import cmp_to_key class Solution(object):    def largestNumber(self, nums):    

  20. Pythonでビットを数える

    負でない整数numがあるとします。 0≤i≤numの範囲の各数値iについて、対応する2進数の1の数を計算し、それらをリストとして返す必要があります。したがって、数が5の場合、数は[0、1、2、3、4、5]であり、これらの数の1の数は[0、1、1、2、1、2]です。 これを解決するには、次の手順に従います- res:=num+1個の0を保持する配列 オフセット:=0 1からnum+1の範囲のiの場合 iおよびi– 1 =0の場合、res [i]:=1およびoffset:=0 それ以外の場合は、オフセットを1増やし、res [i]:=1 + res [offset] return

Total 8994 -コンピューター  FirstPage PreviousPage NextPage LastPage CurrentPage:128/450  20-コンピューター/Page Goto:1 122 123 124 125 126 127 128 129 130 131 132 133 134