leetcode1093

この質問は、私はほとんどオーバー、などの読み取りなど、長い時間を理解していなかった時間を見ました。

クラスソリューション:
    sampleStats(自己、カウント:DEF ' リストの[int] ') - > ' リスト[フロート] ' 
        L = []  = 0 
        、N = 0 
        MAXV = - 1 
        MINV = 256 
        modev = - 1 
        modetime = 0 
        以下のための:範囲(LEN()カウント)
            C = [i]を数える
             場合、C =!0
                l.append((I、C))
                の和 + = C *とI 
                N + = Cの
                MAXV = MAX(MAXV、I)
                MINV = 分(MINV、I)
                 場合 modetimeは< C:
                    modetime = C 
                    modev = 私は
        meanv =和を/ N 
        medianv = 0 
        半分 = 0 
        であれば、n個の%2 == 1 のための:範囲(LEN(L))
                の半分 + = L [i]を[ 1 ]
                 であれば半分> = N // 2: 
                    medianv = L [i]が[ 0 ]
                     ブレーク
        のために範囲(LEN(L)) :
                ハーフ + = L [i]を[ 1 ]
                 であれば半== N // 2: 
                    medianv =(L [i]が[ 0 ] + L [I + 1 ] [ 0 ])/ 2 
                    ブレーク
                ELIF半分 > N// 2: 
                    medianv = L [i]が[ 0 ]
                     ブレーク
        リターン [ フロート(MINV)、フロート(MAXV)、フロート(meanv)、フロート(medianv)、フロート(modev)]

 

おすすめ

転載: www.cnblogs.com/asenyang/p/11072239.html