第一个身高差问题,如果是整型,因为身高数据量不大,可以直接搞个数组,身高直接作为下标,出现就+1,然后遍历两个班级 2*n如果第二遍遍历班级的时候没有出现>2的数组,说明身高没有相同的。就需要遍历存储身高数量的数组,这时候使用两个变量记A,B录下标而且因为是按照下表从小到大便利或者从大到小便利的,那么两个变量都已经使用之后在遇到另外一个身高C的时候A和C的身高差距肯定不会比B小,这时候只需要比较B/C A/B之间的差距再决定要不要更新,如果AB都有值之后,而且当前下标- B> B-A的时候就可以退出这次遍历了。这样只需要三次遍历就能拿到结果,时间复杂度是 2*N + K = O(N),不过如果使浮点型这个方法就不行了
点赞 评论

相关推荐

2025-12-01 15:50
内蒙古工业大学 Java
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务