梅の雨運用要件20190919から3

このジョブは、参照が必要ですhttps://edu.cnblogs.com/campus/nenu/2019fall/homework/7628を

•入力ファイルとして、戦争や平和への要件0、およびファイルシステムによって再読み込みがに読み込まします。三つの連続実行、与えられた時間、各パラメータのCPU消費量。

要件0  入力ファイルとして、「戦争と平和」に、とに読み込むためのファイルシステムが再読み。三つの連続実行、それぞれの与えられた時間、CPU消費量パラメータ

試験方法:入力ptime wf -s < war_and_peace.txt

最初のテスト時間のショット:

 

 第二の試験時間のショット:

 

 時間のスクリーンショット3番目のテスト:

 

 統計:

 

 要件1は、プログラムの推測では、ボトルネックを示しています。あなたは思いますが、最良の結果を得るために最適化された、または先週のここでの最適化(またはアカウントの最適化に取り、そのために悪いコードが書かれていない)されます。

ボトルネック:あまりにも多くの時間を使用し、文字変換処理、コード効率は、機能パッケージのプロセスによって最適化することができます

:真の中
        :lastchar =単語1 [-1] 
        " " "!" "?"; - " "*"、 "%"、「" '、" ""[」、"、、、、でlastchar場合]:
            ワード2 = word1.rstrip(lastchar)
            WORD1 = WORD2 
        他:
            ワード2 =単語1 
            ブレーク
 
    トゥルー中:
        firstchar = WORD2 [0:] 
        firstchar場合は[中」、 "、、、 ""。" "!" "?" ; " '"'、 " - "、 "*"、 "%"]:
            ワード3 = word2.lstrip(firstchar)
            ワード2 =ワード3 
        他:
            ワード3 = WORD2 
            ブレーク

 

要件2本のボトルネックは、プログラムを見つけるためにプロファイル。私たちは、次の3つの機能(またはコードの断片)を実行しているほとんどの時間を与えられています。要件は、スクリーンショットが含まれています。(5点)

要求 分析为什么此处是瓶颈。要求 profile需要得到函数的运行时间和次数。仅得到CPU和内存占用,不得分。

エントリーpython -m cProfile -s time wf.py -s < war_and_peace.txt

 

 

最も時間のかかる3つの機能を:

 

 請求項3のボトルネック、プログラムのパフォーマンスを最適化する「ベストエフォート」。(5点)

 変更されたスニペット:

しばらく:真
               lastchar =単語1 [ - 1 :]
                のための lastchar  ' R \、」。' 
                   ワード2 = word1.rstrip(lastchar)
                   WORD1 = WORD2
                
                   ワード2 = 単語1
                    ブレーク
 
           :真
               firstchar = WORD2 [ 0 :]
                について lastchar  ' \ rを、」。'  
                   ワード3= word2.lstrip(firstchar)
                   ワード2 = ワード3
                
                   ワード3 = WORD2
                    破る
                   #は下のwordListに構築する場合修正単語
           word_list2.appendを(ワード3)

英語の文字の書式設定セクションのカプセル化

要件4:再度プロファイル、このとき、請求項1に三つの機能が与えられた最も時間を要します。

 

 この時点で、3つの関数が費用:

 

 そして3回試験:

 

 

 

 

5回を実行するための要件。三つのファイルに分け教師コンピュータのランキング(Windows8.1)、上の高速走行に応じて。この問題は、最初の歯車、第2歯車10分、第3ギヤ5分の20ポイントを獲得します。機能テストは、0を渡すことはできません。

教師がテストするためにgitのアドレス

 

 

 

 


 

おすすめ

転載: www.cnblogs.com/MAY6/p/11576061.html