暴力解法
class Solution { public: vectortwoSum(vector & nums, int target) { int n = nums.size(); for (int i = 0; i < n; ++i) { for (int j = i + 1; j < n; ++j) { if (nums[i] + nums[j] == target) { return {i, j}; } } } return {}; } };
哈希解法
无序快速查找
class Solution { public: vector2.有序数组合并twoSum(vector & nums, int target) { unordered_map hashtable; //建立无序哈希表 for (int i=0; i second,i}; //访问value it->first访问key } hashtable[nums[i]] = i; //加入值 hashtable[key] = value } return {}; } };
暴力解法 :直接合并两个数组进行排序
但这种方法没有用到排序的特征
class Solution { public: void merge(vector& nums1, int m, vector & nums2, int n) { for (int i=0; i 双指针
class Solution { public: void merge(vector& nums1, int m, vector & nums2, int n) { int p1=0; int p2=0; int cur; int nums3[m+n]; //创建一个m+n的空数组 while(p1