APE
文章标签归档关于

© 2026 APE.PUB

2026-07-05· 5 分钟

two sum

leetcode-cpp

1 两数之和

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

class Solution {
public:
    vector<int> twoSum(vector<int>& nums, int target) {
        unordered_map<int, int> m;
        vector<int> result;
        for(int i = 0; i < nums.size(); i++) {
            if(m.contains(target - nums[i])) {
                result.push_back(m[target - nums[i]]);
                result.push_back(i);
                return result;
            }
            m[nums[i]] = i;
        }
        return result;
        
    }
};

2.两数相加

https://leetcode.cn/problems/add-two-numbers/

/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     ListNode *next;
 *     ListNode() : val(0), next(nullptr) {}
 *     ListNode(int x) : val(x), next(nullptr) {}
 *     ListNode(int x, ListNode *next) : val(x), next(next) {}
 * };
 */
class Solution {
public:
    ListNode* addTwoNumbers(ListNode* l1, ListNode* l2) {
        ListNode* dummy = new ListNode();
        int cur = 0;
        ListNode* p = dummy;
        while(l1 || l2 || cur > 0) {
            int sum = cur;
            if(l1) {
                sum += l1 -> val;
                l1 = l1 -> next;
            }
            if(l2) {
                sum += l2 -> val;
                l2 = l2 -> next;
            }
           
            cur = sum / 10;
            int val = sum % 10;
            ListNode* node = new ListNode();
            node -> val = val;
            p -> next = node;
            p = p -> next;
       
        }
        return dummy -> next;

    }
};

3.无重复字符的最长子串

https://leetcode.cn/problems/longest-substring-without-repeating-characters/description/

class Solution {
public:
    int lengthOfLongestSubstring(string s) {
        int res = 0;

        unordered_set<char> set;

        for(int i = 0, j = 0; j < s.length();) {

            while(i < j && set.contains(s[j])) {
                set.erase(s[i]);
                i++;
            }
            set.insert(s[j++]);
            res = res > set.size() ? res : set.size();
            
        }

        return res;

        
    }
};
← 返回首页