1. 程式人生 > >演算法練習之兩數之和

演算法練習之兩數之和

上週五(1.4號)看到群裡有再說力扣(https://leetcode-cn.com/)的演算法題,自己就去搜索了下,發現是練習演算法、資料庫、shell的平臺,很不錯。

週五下午在測試的間隙,自己做了一道簡單的演算法題,剛好把這兩天覆習的python的基礎知識複習了。

 

 

演算法題目:

 

 

python3程式碼

class Solution:
    def twoSum(self, nums, target):
        """
        :type nums: List[int]
        :type target: int
        :rtype: List[int]
        
""" hashmap=[] for i in range (0,len(nums)): anthor=target-nums[i] for j in range(i,len(nums)): if nums[j]==anthor and i !=j: hashmap.append(i) hashmap.append(j) return list (hashmap)

 

 總結思路及知識點

1.題目要求:給定任意一列表(列表內容為數字),再給定一個目標值target,求列表中哪兩個數字加起來和等於target,返回兩個數字的下標(列表形式)

  思路:

(1)使用迴圈的方式  第一個數字與其他數字進行相加,如果不等於target,繼續以第二個數字與第三個以後的數字進行相加,依次判斷   。。。。

(2)使用相減的方式 

(3)迴圈的取值範圍

(4)不能將同一個數加兩次

2.知識點:

(1)for 迴圈(取值範圍)  、  range 函式、求列表長度的函式len 

(2)空列表、列表的追加  append