自己编写一个数组去掉重复元素的函数
2015-03-04 17:24
627 查看
自己研究编了一个数组去重的函数,有好的意见或思想欢迎和我一起分享!
#include <stdio.h> #include <string.h> #define MAX_FRIEND 100 int repeats_num[MAX_FRIEND]; /*升序排序*/ int comp_int_inc(void *a,void *b) { return ( *((int *)a) - *((int *)b) ); } /* ** 作用 : 去除数组中重复的数据 ** 输入 : arr_size : 元数组元素个数 ** 返回 :去除重复数据后,新数组中元素的个数 */ int remove_repeat(int int_arr[],int arr_size) { int i,j = 0,arr_newsize = 0; int zeroFlag = 0; if(arr_size == 1) //只有1个元素时直接返回 return 1; memset(repeats_num,0,MAX_FRIEND); qsort(int_arr,n,sizeof(int_arr[0]),comp_int_inc); //将数组按升序排序 for( i = 0; i < arr_size - 1; i++) { if( int_arr[i] != int_arr[i + 1] ) { int_arr[j] = int_arr[i]; j++; arr_newsize++; } else repeats_num[j]++; //记录新数组中的元素在元数组中重复次数 } int_arr[j] = int_arr[arr_size - 1]; //录入最后一个元素,同时解决数组元素全相同的情况 arr_newsize++; memset(int_arr + arr_newsize,0,sizeof(int) * (arr_size - arr_newsize)); //清空元素组后面多余的元素 return arr_newsize; }
相关文章推荐
- 自己编写一个数组去掉重复元素的函数
- 编写一个方法,去掉数组的重复元素
- 编写一个方法 去掉一个数组的重复元素
- 用JS编写一个函数,返回数组中重复出现过的元素(实例)
- 编写一个方法,去掉一个数组中的重复元素
- 程序员面试金典——解题总结: 9.17中等难题 17.6给定一个整数数组,编写一个函数,找出索引m和n,只要将m和n之间的元素排好序,整个数组就是有序的。注意:n - m越小越好,也就是说,找出
- 写一个函数,参数为$n,生成一个数组,其元素为1~$n,各元素位置随机排列,不得重复
- 编写一个javscript函数 fn,该函数有一个参数 n(数字类型),其返回值是一个数组,该数组内是 n 个随机且不重复的整数,且整数取值范围是 [2, 32]。
- 编写一个JS函数,实现清除数据中重复的元素
- 编写函数int stat(int a[],int n,int c[][2])。a指向的数组中保存了由n个1位整数组成的数列(n为偶数)。函数从前至后依次将a数组中每两个相邻元素拼成一个不超过2位的
- //1、有一个字符串开头或结尾含有n个空格(” abcdefgdddd ”),欲去掉前后空格,返回一个新字符串。 //要求1:请自己定义一个接口(函数),并实现功能;70分 //要求2:编写
- 一个短小的JS函数,用来得到仅仅包含不重复元素的数组
- 有一个整数数组,请编写一个函数,找出索引m和n,只要将m和n之间的元素排好序,整个数组就是有序的。注意:n-m应该越小越好,也就是说,找出符合条件的最短序列。 给定一个int数组A和数组的大小n,请
- 编写一个javscript函数 fn,该函数有一个参数 n(数字类型),其返回值是一个数组,该数组内是 n 个随机且不重复的整数,且整数取值范围是 [2, 32]。
- 编写函数int stat(int a[],int n,int c[][2])。a指向的数组中保存了由n个1位整数组成的数列(n为偶数)。函数从前至后依次将a数组中每两个相邻元素拼成一个不超过2位的
- PHP100-6 编写一个函数解析多重嵌套数组的所有元素
- 编写函数int stat(int a[],int n,int c[][2])。a指向的数组中保存了由n个1位整数组成的数列(n为偶数)。函数从前至后依次将a数组中每两个相邻元素拼成一个不超过2位
- 用一个方法去掉一个数组的重复元素
- 二、 编写函数int stat(int a[],int n,int c[][2])。a指向的数组中保存了由n个1位整数组成的数列(n为偶数)。函数从前至后依次将a数组中每两个相邻元素拼成一个不超过2位
- 定义一个函数清除该数组的重复元素