刷题Day1

个人主页:小田爱学编程
系列专栏:刷题日记
关注博主,随时获取更多关于IT的优质内容!  


欢迎来到小田代码世界~
喜欢的小伙伴记得一键三连哦 ૮(˶ᵔ ᵕ ᵔ˶)ა

一.题目:

1. 两数之和 - 力扣(LeetCode)

​​​二.算法和代码:

1.暴力法:(c)

2.哈希表:(python)


一.题目:

1. 两数之和 - 力扣(LeetCode)

刷题Day1_第1张图片

​​​二.算法和代码:

1.暴力法:(c)

两次遍历:以此找出符合题目的数字

int* twoSum(int* nums, int numsSize, int target, int* returnSize) {
int*array=(int*)malloc(2*sizeof(int));
 for(int i=0;i

2.哈希表:(python)

元素:索引 降低时间复杂度

key元素  value索引

def twoSum(self, nums: List[int], target: int) -> List[int]:
        result = []
        mapping = {}
        for i in range(0, len(nums)):
            mapping[nums[i]] = i #映射关系 字典
        for j in range(0, len(nums)):
            diff = target - nums[j]
            if (diff in mapping and mapping[diff] != j):
                result.append(j);
                result.append(mapping[diff]);
                return result

今天的分享到这里就结束啦!如果觉得文章还不错的话,可以三连支持一下,您的支持就是我前进的动力!

你可能感兴趣的:(刷题日记,算法,c语言,力扣,python)