[5]安全プランを証明するために。2つのスタックを[Pythonが]キューに入れます

ソース

タイトル説明

キューを達成するための2つのスタック、完了キューのプッシュとポップ操作。キューの要素がint型。


  
  
  1. # - * - コーディング:UTF-8 - * -
  2. 「」 '
  3. Aがプッシュされ、Bは、スタックは、要素が存在するかどうかを決定するために、スタックしながら、Aに直接行くことができる場合、スタックの外にあります
  4. どの要素B、ポップは確かにエラーがない場合、それは最初に圧倒さB内のすべての要素の、要素、その後トップをポップする必要があり、Bは直接ポップアウト持っている場合、あなたは、することができます
  5. これは一緒に、最高のアイデア、最後のアウトを実現2つのスタックで、FIFOキューを実現します。
  6. ' 『』
  7. クラスの ソリューション
  8. #2つのスタックを初期化します
  9. デフ __init__ 自己
  10. 自己 .stackA = []
  11. 自己 .stackB = []
  12. ここで達成位のみプッシュとポップ操作キューがそれぞれ使用されている必要があり、2を押し、ポップスタックが表し
  13. デフ プッシュ自己、ノード)
  14. ここで#ライト・コード
  15. 自己 .stackA.append(ノード)
  16. #ポップは、先験的な条件を必要とします。キューが空の場合は、どれもが返されません
  17. デフ ポップ自己
  18. ある場合#スタックの要素がポップに直接プッシュされます
  19. もし 自己 stackB:
  20. 自己 .stackB.pop()
  21. 要素がない場合#はNoneを返します
  22. elifのない自己スタック:
  23. 戻らない なし
  24. #均一プレスポップへのすべての要素A、Bを実行した場合
  25. 他:
  26. しばらく 自己 stackA:
  27. 自己 .stackB.append( 自己 .stackA.pop())
  28. 返す 自己 .stackB.popを()

 

おすすめ

転載: blog.csdn.net/qq_33487726/article/details/91045871