LeetCode 198 House Robber

LeetCode 198 House Robber Problem

Download Code
class Solution(object):
    # def rob(self, nums):
    #     """
    #     :type nums: List[int]
    #     :rtype: int
    #     """
    #     # dp
    #     ls = len(nums)
    #     if ls == 0:
    #         return 0
    #     dp = [0] * ls
    #     dp[0] = nums[0]
    #     for i in range(1, ls):
    #         if i < 2:
    #             dp[i] = max(nums[i], dp[i - 1])
    #         else:
    #             dp[i] = max(dp[i - 2] + nums[i], dp[i - 1])
    #     return dp[ls - 1]

    # def rob(self, nums):
    #     if nums is None or len(nums) == 0:
    #         return 0
    #     if len(nums) == 1:
    #         return nums[0]
    #     nums[1] = max(nums[0], nums[1])
    #     for i in range(2, len(nums)):
    #         nums[i] = max(nums[i] + nums[i - 2], nums[i - 1])
    #     return nums[-1]

    def rob(self, nums):
        prevMax = currMax = 0
        for num in nums:
            temp = currMax
            currMax = max(prevMax + num, currMax)
            prevMax = temp
        return currMax
Download House Robber.py

List of all House Robber problems

Leetcode 198 House Robber problem solution in python3 with explanation. This is the best place to expand your knowledge and get prepared for your next interview.

Feedback is the most important part of any website.

If you have any query, suggestion or feedback, Please feel free to contact us.