leetcode练习
生活随笔
收集整理的這篇文章主要介紹了
leetcode练习
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1?
問題描述
給定一個整數數組,返回兩個數字的索引,使它們相加到特定目標。
您可以假設每個輸入只有一個解決方案,并且您可能不會兩次使用相同的元素。
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:
1 Given nums = [2, 7, 11, 15], target = 9, 2 3 Because nums[0] + nums[1] = 2 + 7 = 9, 4 return [0, 1].C++代碼如下
1 class Solution { 2 public: 3 vector<int> twoSum(vector<int>& nums, int target) 4 { 5 vector<int> vi; 6 int size = nums.size(); 7 for(int i=0;i<size;i++) 8 { 9 for(int j=i+1;j<size;j++) 10 { 11 if(nums[i]+nums[j] == target) 12 { 13 vi.push_back(i); 14 vi.push_back(j); 15 return vi; 16 } 17 } 18 } 19 return vi; 20 } 21 }; class Solution { public:vector<int> twoSum(vector<int>& nums, int target){unordered_map<int, int> m;vector<int> vi;for (int i=0;i<nums.size();i++){m[nums[i]] = i;}for (int i=0;i<nums.size();i++){int other_number = target - nums[i];if (m.count(other_number) && m[other_number]!=i){vi.push_back(i);vi.push_back(m[other_number]);break;}}return vi;} };
?
?
class Solution { public:vector<int> twoSum(vector<int>& nums, int target){unordered_map<int, int> numer_to_id;for (int i=0;i<nums.size();i++){if (numer_to_id.count(target-nums[i])){return{ i,numer_to_id[target - nums[i]] };}numer_to_id[nums[i]] = i;}return{};} };?
python代碼如下:
1 class Solution(object): 2 def twoSum(self, nums, target): 3 """ 4 :type nums: List[int] 5 :type target: int 6 :rtype: List[int] 7 """ 8 size = len(nums) 9 i = 0 10 for i in range(size): 11 for j in range(i+1,size): 12 if nums[i]+nums[j] == target: 13 return [i,j]注:
range函數用法:
range(start, stop[, step])- start: 計數從 start 開始。默認是從 0 開始。例如range(5)等價于range(0, 5);
- stop: 計數到 stop 結束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]沒有5
- step:步長,默認為1。例如:range(0, 5) 等價于 range(0, 5, 1)
?
轉載于:https://www.cnblogs.com/LuckCoder/p/10252498.html
總結
以上是生活随笔為你收集整理的leetcode练习的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 一个想法不一定对 系列
- 下一篇: [C++ STL] 常用算法总结