1. Two Sum

文章目录
  1. 1. 题目

题目

https://leetcode.com/problems/two-sum/

这是leetcode第一道题,说实话要做出来很简单。暴力加减就行。简单看了看高级一些的做法,基本都是和hash表有关,等第二遍的时候再看吧。

1
2
3
4
5
6
7
8
9
10
11
class Solution(object):
def twoSum(self, nums, target):
"""
:type nums: List[int]
:type target: int
:rtype: List[int]
"""
for i in range(len(nums)):
for j in range(i+1,len(nums)):
if nums[j]==target-nums[i]:
return [i,j]

例程和我基本完全一致,但是有一个地方引起了我的注意。

1
def twoSum(self, nums: List[int], target: int) -> List[int]:

从stackoverflow上找到了答案:https://stackoverflow.com/questions/56506017/what-is-the-meaning-of-listint-in-this-function-declaration

简单来说是一种python3的特性,叫做type hint(or function annotation)

-> List[int] means that the function should return a list of integers.

nums: List[int], target: int means that nums is expected to be a list of integers and that target is expected to be an integer.

我理解为一个类型提示,用于表达这里的变量或者数组本来应该是什么类型。而且可以使用某些函数进行额外的检查。