C语言 精选真题1

 不含有重复元素的交集数组

int fun(int A[ ], int m, int B[ ], int n, int C[ ])
{int i,j,k;int sum=0;//嵌套循环;比较两个数组的相同元素for(i=0;i<m;i++){for(j=0;j<n;j++){if(A[i]==B[j])//如果有相同的元素{for(k=0;k<sum;k++){if(C[k]==B[j])     //查找是否是目标数组的重复元素break;        //数组长度是变量K<sum}if(k>=sum)//不是,则将目标数组增长{C[sum]=B[j];sum++;}}}}return sum ;//返回sum
}
//在实际程序运行的过程中,k>sum不可能存在,因为k=sum时不进入循环
//k=sum的时候会存在,此时再逻辑上表示遍历数组C没有找到重复的元素
//所以将k>sum换成k==sum也会成立//sum++
//新添加的元素总是被放置在C数组的当前已使用部分的末尾的下一个位置。/*
1.数组与指针:
在 C 语言中,数组名可以作为指针使用,指向数组的首元素。函数通过数组名 A、B 和 C 来访问和操作这些数组。
需要注意数组越界的问题。在这个函数中,数组 C 的大小应该足够大,以容纳所有可能的相同元素。否则,可能会导致内存访问错误。
2.嵌套循环:
函数使用了三层嵌套循环来遍历数组 A 和 B,并检查它们的元素是否相同。外层循环遍历 A,中间层循环遍历 B,内层循环则用于检查 C 中是否已经包含了当前找到的相同元素。
嵌套循环的效率可能较低,特别是当数组 A 和 B 很大时。在实际应用中,可能需要考虑优化算法以提高效率。
3.条件判断:
使用 if 语句来检查 A[i] 是否等于 B[j],以及 C[k] 是否已经包含了相同的元素。
在内层循环中,如果找到了相同的元素,则使用 break 语句跳出循环,避免不必要的比较。
4.数组元素的赋值与增长:
当找到一个新的相同元素(即不在 C 中的元素)时,将其赋值给 C[sum],然后递增 sum 以更新 C 的长度。
需要注意的是,在赋值时应该使用正确的语法,原代码中的 C[sum]=B[j]; 末尾的分号是中文分号,应该改为英文分号 ;。
5.返回值:
函数最终返回 sum,即数组 C 中相同元素的个数。
6.边界条件与错误处理:
函数没有显式地处理一些边界条件和错误情况,比如数组 A、B 或 C 为空的情况,或者数组 C 的大小不足以容纳所有相同元素的情况。
在实际应用中,应该增加适当的错误处理逻辑来确保函数的健壮性和可靠性。
7.效率考虑:
如前所述,嵌套循环的效率可能较低。在实际应用中,可以考虑使用哈希表或集合等数据结构来提高查找效率,避免使用三层嵌套循环。
。
*/

sum指代的是下一个添加位置的索引,对应的是第n+1个位置。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/13067.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

[论文精读]SeqMIA: Sequential-Metric Based Membership Inference Attack

图像领域成员推理攻击 SeqMIA: Sequential-Metric Based Membership Inference Attack http://arxiv.org/abs/2407.15098 ACM CCS 2024 先看overview&#xff0c;猜测文章的方法&#xff1a;训练影子模型&#xff0c;使用影子模型、蒸馏数据集和目标模型共同参与蒸馏任务&am…

机器学习基础02

目录 1.特征工程 1.1特征工程概念 1.2特征工程的步骤 1.3特征工程-特征提取 1.3.1字典特征提取 1.3.2文本特征提取 英文文本提取 中文文本提取 1.3.3TF-IDF文本特征词的稀有程度特征提取 2.无量纲化 2.1归一化 2.2标准化 2.3fit、fit_transform、transform 3.特征…

watermark大模型水印详解

一 watermark定义 模型水印是一种用于模型版权保护的技术&#xff0c;通过向大模型植入水印&#xff08;触发集数据加上特定的噪声或者标志&#xff09;&#xff0c;使得模型学习到这种特定的噪声或者标志的特征&#xff0c;通过特定的问题可以从大模型的回答中提取出水印进行…

做运维工程师辛苦吗?

你要知道做那一块的运维 网络运维&#xff08;确保网络稳定安全&#xff09; 应用运维&#xff08;应用软件进程监控、服务和端口相应情况、故障处理等&#xff09; 系统运维&#xff08;操作系统监控 恢复 等&#xff09;、 桌面和外围设备运维&#xff08;计算机终端、外…

关于报错‘cross-env‘ 不是内部或外部命令,也不是可运行的程序

在使用ANT DESIGN PRO这个react框架时出现了cross-env 不是内部或外部命令&#xff0c;也不是可运行的程序 或批处理文件。 如图&#xff1a; 解决办法&#xff1a; 需要全局安装 cross-dev npm install -g cross-env -save-dev 然后重新启动npm start 注意&#xff1a;…

智能座舱多屏项目,中控屏切换语言,后排屏闪黑屏问题

1. 背景 智能座舱多屏项目&#xff0c;中控屏切换语言&#xff0c;后排屏闪黑屏问题 2. 详细分析过程 通过events log查看activity的生命周期&#xff1a;adb shell logcat -b events com.android.rwhvac.view.behind.BehindActivity2 : displayId 2 副屏app com.android.…

基于Multisim温度计温度测量检测测量系统电路(含仿真和报告)

【全套资料.zip】温度计温度测量检测测量系统电路Multisim仿真设计数字电子技术 文章目录 功能一、Multisim仿真源文件二、原理文档报告资料下载【Multisim仿真报告讲解视频.zip】 功能 温度检测测量系统 1.温度测量范围为0&#xff5e;200&#xff23;&#xff1b; 2.三位数…

浅层神经网络

浅层神经网络 浅层神经网络通常指包含一个隐藏层的神经网络。这个网络由输入层、隐藏层和输出层构成&#xff1a; 输入层&#xff1a;输入层负责接收网络的输入特征&#xff0c;通常表示为列向量 x T [ x 1 , x 2 , x 3 ] x^T [x_1, x_2, x_3] xT[x1​,x2​,x3​]&#xff…

解决apidoc不是内部或外部命令,也不是可运行的程序 或批处理文件。

apidoc官网 首先确保安装了apidoc,我这里是全局安装的。 npm install apidoc -g然后打开cmd窗口执行命令时就会报错。 apidoc 不是内部或外部命令,也不是可运行的程序 或批处理文件。 此时只需要找到它&#xff0c;再把它加入环境变量即可了。 win10中npm默认路径:C:\User…

可私有化部署API的集装箱箱号自动识别技术,专业算法厂家

启智畅想作为人工智能行业OCR识别算法厂家&#xff0c;可将集装箱箱号自动识别技术私有化部署&#xff0c;并提供私有化部署的API的接口&#xff0c;在物流行业中正逐渐崭露头角&#xff0c;成为提升效率与精度的关键力量。这一技术不仅打破了传统识别方式的局限&#xff0c;更…

【快速解决】kafka崩了,重启之后,想继续消费,怎么做?

目录 一、怎么寻找我们关心的主题在崩溃之前消费到了哪里&#xff1f; 1、一个问题&#xff1a; 2、查看消费者消费主题__consumer_offsets 3、一个重要前提&#xff1a;消费时要提交offset 二、指定 Offset 消费 假如遇到kafka崩了&#xff0c;你重启kafka之后&#xff0…

第七届中国国际进口博览会 2024长三角G60科创走廊高质量发展要素对接大会举行

11月9日&#xff0c;第七届中国国际进口博览会2024长三角G60科创走廊高质量发展要素对接大会在国家会展中心举行。会上&#xff0c;G60科创走廊九城市共赴进博之约&#xff0c;以全面深化改革为动力&#xff0c;深入推进长三角G60科创走廊走深走实&#xff0c;携手推动科技创新…

一键P图新神器!SeedEdit让图片编辑更快捷!

大家还记得MJ推出的图片编辑功能吗&#xff1f;只需涂抹想要修改的区域&#xff0c;再输入提示词&#xff0c;就能一键更改原图。而现在&#xff0c;豆包大模型团队也推出了类似的功能——SeedEdit&#xff0c;而且更加简单快捷&#xff01; Ai 智能办公利器 - Ai-321.com 人工…

【数据分析与数据挖掘】决策树算法

决策树的构造的本质是利用训练数据构造一棵决策树&#xff0c;然后利用这棵树所提炼出来的规则进行预测。算法过程大体分为两步&#xff1a;1.利用训练数据构造决策树 2.利用构造的决策树进行预测 分类相关知识 信息熵 信息熵由香农提出&#xff0c;用来衡量事件的不确定性的…

丹摩征文活动|智谱AI引领是实现文本可视化 - CogVideoX-2b 部署与使用

文章目录 前言一、DAMODEL平台特性二、创建CPU云实例三、CogVedioX介绍四、DAMODEL一键部署CogVideoX1. 创建丹摩实例(参考上述介绍)2. 配置环境和依赖3. 模拟与配置文件4. 开始运行4.1 调试4.2 webUI4.3 端口映射 前言 DAMODEL&#xff08;丹摩智算&#xff09;是一款专为满足…

22. 记录架构

文章目录 第22章 记录架构22.1 架构文档的用途和受众22.2 符号表示22.3 视图模块视图组件和连接器视图C&C 视图的符号表示 分配视图质量视图 22.4 组合视图22.5 记录行为22.6 视图之外22.7 记录基本原理22.8 架构的利益相关者22.9 实际考虑建模工具在线文档、超文本和维基遵…

Python练习19

Python日常练习 题目&#xff1a; 打印如下九九乘法表 1*11 2*12 2*24 3*13 3*26 3*39 4*14 4*28 4*312 4*416 5*15 5*210 5*315 5*420 5*525 6*16 6*212 6*318 6*424 6*530 6*636 7*17 7*214 7*321 7*428 7*535 7*642 7*749 8*18 8*216 8*324 8*432 8*540 8*648 8*756 8*86…

卸载 Python

文章目录 WindowsmacOSLinux总结 卸载 Python 的方法取决于你使用的操作系统。以下是针对不同操作系统的卸载步骤&#xff1a; Windows 打开控制面板&#xff1a; 按 Win R 打开运行对话框&#xff0c;输入 control&#xff0c;然后按 Enter。或者&#xff0c;从开始菜单搜索并…

使用Wireshark获取USB HID(Human Interface Device)报告描述符

使用Wireshark选择需要获取的USB进行抓取数据&#xff0c;找到设备&#xff08;host&#xff09;接收信息的数据 第二栏出现hid报告&#xff0c;右击选择复制流 将复制的内容粘贴到USB标准请求及描述符在线分析工具 - USB中文网 进行解析 以图中获取手写板的数据为例&#xff…

【深度学习】LSTM、BiLSTM详解

文章目录 1. LSTM简介&#xff1a;2. LSTM结构图&#xff1a;3. 单层LSTM详解4. 双层LSTM详解5. BiLSTM6. Pytorch实现LSTM示例7. nn.LSTM参数详解 1. LSTM简介&#xff1a; LSTM是一种循环神经网络&#xff0c;它可以处理和预测时间序列中间隔和延迟相对较长的重要事件。LSTM通…