leetcode - 6.Zフォント変換

クラスのソリューション(オブジェクト):
     デフ(自己、秒、numRowsの数)を変換します。
         "" " タイプS:STR 
        :タイプnumRowsの数:INT 
        :RTYPE:STR 
        """ 
        もし numRowsの数== 1 復帰場合 LEN(S)< 2 リターンS 
        、S1 = S [:: numRowsの数* 2-2 ] 
        D = [I  I における範囲(LEN(S))] [:: numRowsの数* 2-2 ] 
        、S2 = S [numRowsの数-1:] [ :: numRowsの数は、* 2-2 ] 
        D_1 = [iがnumRowsの数-1 + ための I ] D 
        場合でlen(S1)==(S2)でlen 
            D = D_1 
            T = numRowsの数-2 ながら、 T> 0:
                D1_1 = [iがT + ためのI において、D もし iが+ T < LEN(S)] 
                D1_2 = [これのために D であれば、それ> 0 】 
                D1 = D1_1 + D1_2                 d1.sort() 
                S3 = '' のための I における範囲(LEN(D1)):
                    S3 = S3 + S [D1 [I] 
                、S1 = S1 + S3
            

                
                T- = 1
         のelif LEN(S1)> LEN(S2):
            T = 1
             ながら、 Tは<= numRowsの数-2 
                D1_1 = [iがT + ためのI において、D 場合、I + T < LEN(S)] 
                D1_2 = [これのために I において D であれば、それ> 0] 
                D1 = D1_1 + D1_2 
                d1.sort() 
                S3 = '' 
                のための I における範囲(LEN(D1)):
                    S3 = S3 + S [D1 [I] 
                、S1 = S1 +S3 
                トン + = 1つの
         復帰 S1 + S2
実行時:80ミリ秒は、Pythonの提出内のすべてのユーザーの36.02パーセントを打ちます
メモリ消費量:11.7メガバイトには、Pythonの提出内のすべてのユーザーの45.14パーセントを破りました
 
ああHaoben、このような一連のうち2時間前。
执行用时为24 ミリ的范例
 クラス溶液(オブジェクト):
     DEF 変換(S、自己、numRowsの数):
         "" " タイプS:STR 
        :タイプnumRowsの数:INT 
        :RTYPE:STR 
        """ 
        であれば numRowsの数<2 リターン
        結果 = [ ''  のための I における範囲(numRowsの数)] 
        、J = 0
         のための I における範囲(LEN(S)):
            結果[J] + = S [i]の
             場合 J == numRowsの数-1 
                BOOL= -1
             であれば jは== 0:
                BOOL = 1 
            、J + = BOOL
         戻り '' .join(結果)

この方法で人々に良い素晴らしいああ!

                                                                 --2019.10.11

おすすめ

転載: www.cnblogs.com/taoyuxin/p/11654763.html