力扣day01--两数之和

tip:少壮不努力老大徒伤悲,大三才意识到编程的重要性,希望为时不晚吧,学校课程学过C语言、Java、Python但由于自己是行动上的小矮子,所以学过的编程都忘了,以至于看力扣题解代码都很迷惑 en???这怎么和我学的不一样呢。只能拆分学习每一句代码,不吹不黑,如果你准备开始刷编程题,,一定要坚持下去,也以此监督我自己,希望以后不要为时晚矣.....

day01--两数之和

 

 

想法:刚看到这个题,有点排序的味道,只不过比较大小换成了相加,两层循环,第一层for(int i=0;i<数组长度-1;i++)  第二层  (int j=i+1;j<数组长度;j++)  关于为啥第一层i<数组长度-1 ,因为i循环到倒数第二个数时,里层循环j=j+i,就遍历到了最后一个。

Java代码

class Solution {
    public int[] twoSum(int[] nums, int target) {
        int i=0;
        int j=0;
        int a=nums.length;
        for(i=0;i<a-1;i++){
            for(j=i+1;j<a;j++){
                if(nums[i]+nums[j]==target){
                    return new int[]{i,j};
                }

            }
        }
        return new int[0] ;
       }
}

刚开始的时候就很蒙逼,这咋没有输入输出?......对自己也很无语,不会就我这样吧?

写的是一个函数/方法,把实现的代码封装起来,然后调用就可以了,public int[] towSum这里int[]就表明了函数返回值就是是个数组,所以return的时候要符合要求,T^T,然后twoSum(int[] nums, int target) 是函数要传的参数nums和target ,有点不太理解   return new int[]{i,j} 为啥这样写,我要是整明白了就再更新......

Python代码

class Solution(object):
    def twoSum(self, nums, target):
        a=len(nums)
        for i in range(a-1):
            for j in range(i+1,a):
                if(nums[i]+nums[j]==target) :
                     return [i,j]
                
        return [] 

Python代码简洁一点,但思路都是一样。其中关于self,self就是指类本身,towSum是在类中定义的函数,在类中定义的函数第一个参数永远是self,调用时不用传递参数。可以自己敲一下,测试一下自己对self的理解和疑惑,会更有效果

class Student(object):
     def __init__(self, name, score):
         self.name = name
         self.score = score
        # print(self.name)
 student=Student('康康',99)
 print(student.name)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值