c语言编程输入一组整数求其中出现次数最多的整数及其出现次数
c语言编程输入一组整数求其中出现次数最多的整数及其出现次数
日期:2015-12-11 20:40:42 人气:1
马上想到以下方法实现:
排序,然后统计
hash映射统计
考虑到排序的时间复杂度一般为O nlg(n),所以还是牺牲一定的空间换时间复杂度为O (1)的。当然,如果空间比时间宝贵的话,建议用第一种。或者你自己愿意试一下,这里给出第二个的代码,考虑到数组太消耗空间,使用STL中的map。map内部是用红黑树实现的,所以空间复杂度是O nlg(n)的,比数组的O(1)要差,但是还能接受:
#include #include using namespace std;int main(){ map dic;