AI刷题:超市里的购物架
题目:
题目解析:
这道题的大致含义为:顾客有一个购买清单,且要按照购买清单的顺序来进行购买,他从架子前端走到后端,遇到空格就离开,遍历完也离开,求管理员应该怎么摆放能让顾客买最多的商品。 虽然顾客清单是不变的,但货架商品的摆放是可变的,这里最重要的一点便在于优先级的设定,即要将优先级高的排在前面,
这份代码将货架,购买者的需求进行统计,在根据每件商品的数量求优先级,即数量最大的优先级最高,后保存起来,然后便将这些数据通过list表来存储起来,
接着用冒泡排序来对这些数据按照优先级大小来排序,最后将排序后的数组与客户想要购买的进行比较,得出最大值。
这个代码的难点便在于,需要申请两个数组来存储货架与顾客的商品清单,并且用他们的数组下标+‘a’来表示他们代表的字符,容易弄得人眼花缭乱,并且设计优先级非常的关键,决定这道题能否以最优的方式解出。
知识总结:
这道题的冒泡排序,是一个比较简单的经典算法,我从这道题中收获的最大成功便是,对于与字符串有关的题目,可以申请两个数组来进行存储他们出现的次数,并且下标用来表示他们代表的字母,是一种比较灵活的存储方式,并且这种优先级的思想对于一些排序题目有着很大的参考意义,以后遇到此类题目应该想到优先级的方式来解答问题。重点还有要理解题目的意思,我一开始便卡在顾客到底是以什么方式来进行购买的,读懂后才发现,他不关注顺序,在乎的是个数,即与货架物品的匹配程度。
学习计划:
对我来说,我首先规划了一个科学的刷题计划,依据java各板块的难度和自身掌握程度,设定每日的刷题量及时间。当编程时遇到不会的题目,我会思考并且细致查看解析,理解逻辑错误或语法问题,看看哪个知识点我记得不牢固,随后,我针对错题涉及的知识点进行专项训练,通过编写相似题目来加深理解。而豆包MarsCode AI刷题,则切好可以通过询问AI来理解解题思路,直到自己的思维漏洞,从而提高自己独立思考的解题能力。
AI认知:
AI技术在教育领域的应用极大地丰富了教学手段,提高了学习效率。特别是AI刷题功能,通过个性化推荐和智能解析,让我能针对性学习,高效掌握知识点,加深自己对知识的理解,不理解之处通过询问AI可以得到非常有效的解答,并且AI不会局限于一个思路,他会结合整体的解答方式来给出他的回复,富有逻辑且全面。