当前位置: 首页 > news >正文

【C语言刷力扣】2206.将数组划分成相等数对

题目:

解题思路:

        题目中要求元素成数对出现,即每个元素出现偶数次。用哈希表存放每个数出现的次数,再循环查看每个数的次数是否位偶数。

typedef struct {int key;int count;UT_hash_handle hh;
} hashEntry;bool divideArray(int* nums, int numsSize) {hashEntry * cnt = NULL;for (int i = 0; i < numsSize; ++i) {hashEntry * pEntry = NULL;HASH_FIND(hh, cnt, &nums[i], sizeof(int), pEntry);if (pEntry == NULL) {pEntry = (hashEntry*)malloc(sizeof(hashEntry));pEntry -> key = nums[i];pEntry -> count = 1;HASH_ADD(hh, cnt, key,sizeof(int), pEntry);}else pEntry -> count++;}hashEntry *curr = NULL, *next = NULL;HASH_ITER(hh, cnt, curr, next){if (curr->count % 2 != 0) return false;}return true;
}


http://www.mrgr.cn/news/50165.html

相关文章:

  • YOLOv11改进策略【Conv和Transformer】| ACmix 卷积和自注意力的结合,充分发挥两者优势
  • linux------缓冲区与C库的原理
  • cmake模板-支持编译动态/静态文件
  • Dmitri Shuralyov的全职开源之旅
  • c语言中使用(>> )运算替代(/ %)运算实现优化
  • 【MAUI】步进器
  • Avarra:革新企业销售培训的未来
  • SHA1算法学习
  • Product1M 深度理解 PPT
  • STL.string(上)
  • Linux内核 -- 多核数据同步原语言之 smp_load_acquire 的作用与使用
  • 当下的时代?
  • Kubernetes 节点清空
  • STM32中断
  • JAVA软开-面试经典题(7)-字符串常量池
  • MATLAB代码解析:利用DCGAN实现图像数据的生成
  • 【时间盒子】-【10.自定义弹窗】CustomDialogController
  • 扭亏年只是开始,赛力斯的成长性仍在继续
  • LabVIEW智能可变温循环PCT测试系统
  • micro-memoize 缓存计算结果