本文共 1449 字,大约阅读时间需要 4 分钟。
1. Two Sum
Given an array of integers, return indices of the two numbers such that they add up to a specific target.
You may assume that each input would have exactly one solution, and you may not use the same element twice.
Example:
Given nums = [2, 7, 11, 15], target = 9,Because nums[0] + nums[1] = 2 + 7 = 9,return [0, 1].
class Solution(object): def twoSum(self, nums, target): d = {} for i, n in enumerate(nums): sec_n = target - n if sec_n in d: return [d[sec_n], i] else: d[n] = ix =Solution()print(x.twoSum([1,1,3,4],5))
7. Reverse Integer
Given a 32-bit signed integer, reverse digits of an integer.
Example 1:
Input: 123Output: 321
Example 2:
Input: -123Output: -321
Example 3:
Input: 120Output: 21
Note:
Assume we are dealing with an environment which could only hold integers within the 32-bit signed integer range. For the purpose of this problem, assume that your function returns 0 when the reversed integer overflows.class Solution: def reverse(self, x): """ :type x: int :rtype: int """ x = str(x) if x[-1] == "0" and len(x)>1: x = x[:-1] if x[0] == "-": res = int("-" + x[-1:0:-1]) return res if res.bit_length() < 32 else 0 else: res = int(x[::-1]) return res if res.bit_length() < 32 else 0x = Solution()print(x.reverse(0))print(x.reverse(-12030))
转载地址:http://yvzsi.baihongyu.com/