青训营字节 MarsCode 技术训练营第二课——学习体验与故事 | 豆包MarsCode AI 刷题

84 阅读2分钟

学习体验与故事

体验与成长:

在10月左右,我了解到字节青训营更在招募,怀着对字节的向往,我报名了这次青训营,入营要求是在截止时间之前刷够15道题目(至少包括10道简单,4道中级和1道难题),此时我已经很久没写过算法题,相对属于一个生手状态,但AI刷题为我提供了相当大的帮助。

大部分简单题目稍微思考一会就能解决,主要是中级和困难的题目,需要对算法有一定程度的个人理解,我会首先尝试自己的思路,并写代码,在遇到运行报错或者部分用例未通过的情况下,可以让AI提供思路或者帮你检查编辑区的代码,但有时候AI给的不一定是最便捷的代码,在使用过程中需要保持自己的思考。在使用过程中还能巩固旧知识,学到新知识。

刷题故事:

AI 刷题功能给我带来了不一样的体验,在第34题”游戏排名第三大的分数“中:1.如果分数中有三个或以上不同的分数,返回其中第三大的分数。2.如果不同的分数只有两个或更少,那么小M将选择最大的分数作为他的目标。

我的想法是直接对数组进行降序排序,而后取出第三大的数即可完成任务

if(set.size()>=3){
 Integer[] sort = set.descendingSet().toArray(new Integer[0]);
 return sort[2];
   }else{
     return set.last();
       }

在询问AI后,它给出了不一样的思路

if(set.size()>=3){
Iterator<Integer> des = set.descendingIterator();
des.next();
des.next();
return des.next();
  }else{;
    return set.last();
      }

即使用 TreeSet的降序迭代器来获取集合中的第三个元素,通过调用三次 next()方法,分别跳过前两个元素。最后成功得到第三大的元素。

对于一道题目,可能存在多种题解,我可能只会想到其中一种或几种,而AI则能为我提供不同的思路,让我在刷题中思考和成长。

AI 认知:

近年来AI发展迅速,在各行各业都有一定的应用。在教育领域,AI更能为我们带来前所未有的体验,通过AI,我们可以快速找到自己想要的资料,AI可以帮我们检查思路或者提供我们认知之外的新想法。我始终觉得对新事物要保持一定的包容态度,不能一直待在舒适区,我们应该勇敢地去尝试AI。但任何事物都有两面性,把握不好尺度,一味地寻求AI帮助会让我们逐渐丧失自己的思维。