纯粹的热爱 2022-06-12 23:08 采纳率: 60%
浏览 38
已结题

[数据结构]用哈希统计整数次数

我的题目【为什么输不出次数】
【问题描述】

用HASH方法统计整数出现的次数

【输入形式】

以逗号分隔,#结尾的整数
【输出形式】

等式。左侧为排序好的整数,右侧为其出现的次数。

【样例输入】

2,6,7,13,18,3,6,1,3,7#
【样例输出】

1=1
2=1
3=2
6=2
7=2
13=1
18=1
代码如下
#include<stdio.h>

typedef struct hx{
int key;
int num;

}hx;

int main()
{
int s,i=0,max,j,w;
char c;
int a[1000];
scanf("%d%c",&s,&c);
a[i]=s;
max=s;
while(c!='#'){

scanf("%d%c",&s,&c);
if(max<s)max=s;
i++;
a[i]=s;
}
hx b[100];

for(j=1;j<=max;j++)
{
b[j].key=j;
b[j].num=0;

}
for(j=0;j<=i;j++)
for(w=1;w<=max;w++)
{
if(a[i]==b[w].key)b[w].num=b[w].num+1;
}
for(w=1;w<=max;w++)
{
if(!b[w].num)
{
printf("%d=%d\n",b[w].key,b[w].num);

}
}

return 0;
}

  • 写回答

1条回答 默认 最新

  • WaitIKnowYou 2022-06-12 23:43
    关注

    定义一个数组初始化元素为0,循环输入遇到#结束
    循环: 输入s
    a[s]++
    哈希表 key 存s value存a[s]
    循环结束

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 6月21日
  • 已采纳回答 6月13日
  • 创建了问题 6月12日

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵