LeetCode刷题全程记录

目录

  • LeetCode简介
  • LeetCode简单题
    • 01 两数之和

LeetCode简介

刷题之前,先简单介绍一下LeetCode,
再陈述一下需要准备材料,https://www.jianshu.com/p/18c7f2533f7a

LeetCode简单题

01 两数之和

题目描述如下:

给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。

示例:
给定 nums = [2, 7, 11, 15], target = 9
因为 nums[0] + nums[1] = 2 + 7 = 9
所以返回 [0, 1]

方法一:

第一次提交代码:
【反思】测试结果及相应代码如下图所示,出现错误的原因是没有考虑整数数组元素为0值时的情况,导致在定义差值数组的时候初始化值为0,第一次比较整数数组第一个元素0与差值数组第一个元素时,直接返回整数数组下标0和差值数组第一位元素下标0的情况。
LeetCode刷题全程记录_第1张图片
第二次提交代码:
【反思】出现超出输出限制的原因是,print的位置不对,提交代码的时候忘记删除调试时候的print输出语句造成的。
LeetCode刷题全程记录_第2张图片
第三次提交代码:
【反思】执行时间6508ms,太过于长了,原因有一方面是因为使用了python中的List结构进行遍历,其时间复杂度是O(n)的,和字典的遍历时间复杂度O(1)相比自然差很多,建议以后python遍历采用字典进行。
LeetCode刷题全程记录_第3张图片
第四次提交代码:

你可能感兴趣的:(计算机应用类技术)