去掉数组中重复的元素。
2025-01-17 18:20 钟铧若岩 阅读(6) 评论(0) 编辑 收藏 举报#include <stdio.h> #include <stdlib.h> // 函数用于移除数组中的重复元素并返回新数组的大小 int removeDuplicates(int* arr, int size, int** newArray) { if (size <= 0) return 0; // 动态分配内存给新的数组 *newArray = (int*)malloc(size * sizeof(int)); if (*newArray == NULL) { printf("Memory allocation failed\n"); exit(1); } int newSize = 0; for (int i = 0; i < size; i++) { int isDuplicate = 0; // 检查当前元素是否已经在新数组中存在 for (int j = 0; j < newSize; j++) { if ((*newArray)[j] == arr[i]) { isDuplicate = 1; break; } } if (!isDuplicate) { (*newArray)[newSize++] = arr[i]; } } return newSize; } int main() { int array[] = {1, 2, 3, 2, 4, 5, 3, 6, 1}; int size = sizeof(array) / sizeof(array[0]); int* newArray; int newSize = removeDuplicates(array, size, &newArray); // 输出去重后的数组 printf("Array after removing duplicates: "); for (int i = 0; i < newSize; i++) { printf("%d ", newArray[i]); } printf("\n"); // 释放动态分配的内存 free(newArray); return 0; }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?