【C语言刷力扣】1748.唯一元素的和

server/2024/10/18 18:51:11/

题目:

法一 解题思路:

        由于 nums.length 小于100,新建数组 num[101],用来遍历存放 nums[i]出现的次数。

int sumOfUnique(int* nums, int numsSize) {int result = 0;int num[101] = {0};  // memset(num, 0, sizof(num));for (int i = 0; i < numsSize; i++) {num[nums[i]]++;}for (int i = 0; i < 101; i++) {if (num[i] == 1) result += i;}return result;
}

法二 哈希表(官方)解题思路:

typedef struct {int key;int val;UT_hash_handle hh;
}hashEntry;int sumOfUnique(int* nums, int numsSize) {hashEntry * cnt = NULL;int ans = 0;for (int i = 0; i < numsSize; ++i) {hashEntry * qEntry = NULL;HASH_FIND(hh, cnt, &nums[i], sizeof(int), qEntry);if (qEntry == NULL) {hashEntry * qEntry = (hashEntry*) malloc(sizeof(hashEntry));qEntry -> key = nums[i];qEntry -> val = 1;ans += nums[i];HASH_ADD(hh, cnt, key,sizeof(int), qEntry);}else if(qEntry->val == 1){ans -= nums[i];qEntry -> val = 2;}}hashEntry * curr = NULL, * next = NULL;HASH_ITER(hh, cnt, curr, next){HASH_DEL(cnt, curr);free(curr);}return ans;
}


http://www.ppmy.cn/server/131981.html

相关文章

RK3568笔记六十五:LIVE555交叉编译测试

若该文为原创文章,转载请注明原文出处。 在开发项目时有用到LIVE555,使用是其他芯片,功能是LIVE555拉流,通过LVGL显示摄像头数据。 这里记录如何交叉编译,测试一下,为后续增加拉流和推流准备,使用zlmedia也可以,但live555用的比较多。 想实现的是: 一、使用LIVE555…

小猿口算安卓端安装包PK一题秒过关。。。

大家好&#xff0c;我是小黄。 近段时间&#xff0c;越来越多的同学都想去小猿口算里面虐小学生&#xff0c;但是发现越来越多的计算机学生带着科技与他们进行对抗&#xff0c;这样非计算机专业的大学生们​苦不堪言。 现在&#xff0c;非计算机大学生们翻身的机会来了&#…

v-model双向绑定组件通信

给input元素绑定原生input事件&#xff0c;触发input事件时&#xff0c;进而触发update:model-value事件 <template> <Child v-model"lastName" v-if"true"></Child> <p >{{lastName}}</p> </template> <script&g…

如何理解应用 Java 多线程与并发编程?

如何理解应用 Java 多线程与并发编程&#xff1f; 在日常开发中&#xff0c;随着硬件性能的提升&#xff0c;尤其是多核处理器的普及&#xff0c;如何让应用程序更好地利用这些资源&#xff0c;成为每个程序员需要考虑的问题。这时候&#xff0c;多线程与并发编程就显得尤为重…

windows自动化(一)---windows关闭熄屏和屏保

电脑设置关闭屏幕和休眠时间不起作用解决方案 一共三个方面注意&#xff1a; 一、关闭屏保设置&#xff1a; 二、电源管理设置 三、关闭盖子不做操作&#xff1a; 第一点很重要&#xff0c;就算二三都做了&#xff0c;一没做&#xff0c;照样不行。

OKHTTP 如何处理请求超时和重连机制

&#x1f604;作者简介&#xff1a; 小曾同学.com,一个致力于测试开发的博主⛽️&#xff0c;主要职责&#xff1a;测试开发、CI/CD 如果文章知识点有错误的地方&#xff0c;还请大家指正&#xff0c;让我们一起学习&#xff0c;一起进步。 &#x1f60a; 座右铭&#xff1a;不…

【优选算法】(第三十一篇)

目录 最⻓公共前缀&#xff08;easy&#xff09; 题目解析 讲解算法原理 编写代码 最⻓回⽂⼦串(medium) 题目解析 讲解算法原理 编写代码 最⻓公共前缀&#xff08;easy&#xff09; 题目解析 1.题目链接&#xff1a;. - 力扣&#xff08;LeetCode&#xff09; 2.题…

【QT Quick】C++交互:暴露 C++ 对象到 QML

【QT Quick】C交互&#xff1a;暴露 C 对象到 QML 在 Qt Quick 开发中&#xff0c;使用 Context Property 将 C 对象暴露给 QML 是一种直观有效的方式。这种方法允许我们直接在 QML 中访问 C 对象的属性和方法&#xff0c;而无需使用信号和槽。这篇文章将详细展开如何通过 Con…