leetcode-半ばソートや検索 - 56のマージ間隔

mycode

問題:例えば、最後の要素は、[1]、[10]、最小値は、すべての要素の前の最大値よりも10以上のすべての要素、目の前にある1未満で、ですが、私は唯一の隣接を考慮することを考え始めました

 

参考:

1つのキーだけがあるので、私は唯一の隣接を考慮すれば、あなたはソート最初のリストを行う必要があり、そのときのサイクルにも第二の要素を考慮してください考えます

クラス溶液(オブジェクト):
    DEFマージ(自己、間隔):
        "" "
タイプ間隔:リスト[リスト[ INT ] 
        :RTYPE:リスト[リスト[ INT ]
         """
         intervals.sort(キー=ラムダX: X [ 0 ])
        長さ = LEN(間隔)
        RES = []
         のための I における範囲(長さ):
             もし RES == :[] 
                res.append(間隔[I])
            
                サイズ = LEN(RES)
                 場合RES [サイズ- 1 ] [ 0 ] <=間隔[I] [ 0 ] <=のRES [サイズ- 1 ] [ - 1 ]:
                    RES [サイズ - 1 ] [ - 1 ] = MAX(間隔[I] [ - 1 ]、RES [サイズ- 1 ] [ - 1 ])
                 
                    res.append(間隔[i])と
        リターン RES

 

おすすめ

転載: www.cnblogs.com/rosyYY/p/10978038.html