1、实现双重遍历循环算法,算法思想:1. 通过双重遍历,获取数组中坡庥汩赴每一个数字出现的次数,并判断如果一个数字出现的次数大于数组长度的一半,则其为当前数组的众数,返回即可。算法需要双重遍历数组,故时间拎粹蠃账复杂度为 O(n²),算法没有使用额外空间,故空间复杂度为 O(1)。
2、编写本地测试主方法。
3、运行主方法,观察控制台输出,图示,输出符合预期,双重遍历算法测试通过。
4、实现先排序后统计算法,算法思想:1. 先对数组排序,然后再统计排序后的数组中间元素在数组中出现的次数,剧安颌儿如果大于数组长度的一半,则为众数,返回即可,否则数组不存在众数元素。算法需要对数组排序以及一次遍历,综合来看,时间复杂度为 O(nlogn),算法没有使用额外空间,故空间复杂度为 O(1)。
5、图示,将先排序后统计算法的测试代码补充到主方法中,再次运行主方法,观察控制台输出,符合预期,算法测试通过。