發表文章

目前顯示的是 8月, 2019的文章

[C++] LeeCode 7. Reverse Integer

Language Information : C++ Description : Reverse Integer URL :  https://leetcode.com/problems/reverse-integer/ Code : class Solution { public: int reverse(long long int x) { long long int sum = 0; long long int num = abs(x); vector<int> vec; while(num>0){ long long int temp = num%10; vec.push_back(temp); num = num/10; } for(int i=0;i<vec.size();i++){ sum += vec[i]*pow(10,vec.size()-i-1); } if(x<0){ sum = 0-sum; } if(sum < INT_MIN || sum > INT_MAX){ return 0; }else{ return (int)sum; } } }; - 使用迴圈去%10並存入vector, 在使用迴圈反過來乘上十的N次方, 要注意負數, 再來要注意到此題要求最終答案小於int的範圍要回傳0。

[C++] LeeCode 1. Two Sum

Language Information : C++ Description : Two Sum URL :  https://leetcode.com/problems/two-sum/ Code : class Solution { public: vector<int> twoSum(vector<int>& nums, int target) { vector<int> vec; for(int i=0;i<nums.size();i++){ for(int j=i+1;j<nums.size();j++){ if(target-nums[i]==nums[j]){ vec.push_back(i); vec.push_back(j); break; } } } return vec; } }; - 宣告一個 arrayList  = []去存結果, 使用最外層的 for loop 巡 nums 這個 input list, 宣告參數 subSum 讓 target 減去正在被巡的for element, 使用內層 for loop 再次巡 nums 並找出是否還有相減後相符的數字, 找到後將其位置 append 至 arrayList, 若未找到則將 subSum 歸零,重新繼續尋找。