Skip to content

Latest commit

 

History

History

200

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 

LeetCode 151-200

151 Reverse Words in a String

class Solution(object):
    def reverseWords(self, s):
        """
        :type s: str
        :rtype: str
        """
        tmp = s.split()
        return ' '.join(tmp[::-1])

165 Compare Version Numbers

class Solution(object):
    def compareVersion(self, version1, version2):
        """
        :type version1: str
        :type version2: str
        :rtype: int
        """
        v1 = version1.split('.')
        v2 = version2.split('.')
        k1, k2 = 0, 0
        while k1 < len(v1) and k2 < len(v2):
            if int(v1[k1]) > int(v2[k2]):
                return 1
            if int(v1[k1]) < int(v2[k2]):
                return -1
            k1 += 1
            k2 += 1
        while k1 < len(v1):
            if int(v1[k1]):
                return 1
            k1 += 1
        while k2 < len(v2):
            if int(v2[k2]):
                return -1
            k2 += 1
        return 0

171 Excel Sheet Column Number

class Solution(object):
    def titleToNumber(self, s):
        """
        :type s: str
        :rtype: int
        """
        ret = 0
        track = {'A': 1, 'B': 2, 'C': 3, 'D': 4, 'E': 5, 'F': 6, 'G': 7,
                 'H': 8, 'I': 9, 'J': 10, 'K': 11, 'L': 12, 'M': 13, 'N': 14,
                 'O': 15, 'P': 16, 'Q': 17, 'R': 18, 'S': 19, 'T': 20,
                 'U': 21, 'V': 22, 'W': 23, 'X': 24, 'Y': 25, 'Z': 26}
        for k, v in enumerate(s):
            ret += track[v] * 26 ** (len(s) - 1 - k)
        return ret

172 Factorial Trailing Zeroes

class Solution(object):
    def trailingZeroes(self, n):
        """
        :type n: int
        :rtype: int
        """
        ret, carry = 0, 1
        while True:
            cnt = n / 5 ** carry
            if cnt == 0:
                return ret
            ret += cnt
            carry += 1