卡塔尔世界杯比分将两个整型数组按照升序排列,并且过滤掉重复数组元素解题思路:
1. 先将两个数组进⾏合并,可以利⽤C语⾔的memcpy函数进⾏;
2. 将新数组进⾏冒泡排序;
3. 过滤掉重复元素;
tornado中文教程代码如下:
#include <stdlib.h> #include<string.h>
//冒泡排序
void sortArray(int * inArr, int arrCount)
{
int i = 0;
for (int k = 0; k < arrCount - 1; k++)
{
for (int p = 0; p < arrCount - k - 1; p++)
{
if (inArr[p] > inArr[p + 1])
{
int temp = inArr[p];
inArr[p] = inArr[p + 1];
alar是什么意思 inArr[p + 1] = temp;
}
python中什么是面向对象 }
}
}
/* function:merge two arrays into one new array and sort its element by asc, then filter the dunplicate elements.
input:int * pArray1 :整型数组1 int iArray1Num:数组1元素个数 int * pArray2 :整型数组2 int iArray2Num:数组2元素个数输出:int * pOutputArray:合并后的数组 int * iOutputNum:合并后数组元素个数
返回:void */
void CombineBySort(int * pArray1, int iArray1Num, int * pArray2, int iArray2Num, int * pOutputArray, int * iOutputNum) {
if (pArray1 == NULL || pArray2 == NULL || pOutputArray == NULL || iOutputNum == NULL) return;
if (iArray1Num == 0 && iArray2Num == 0) return;
int * pTempArray = (int *)malloc(sizeof(int) * (iArray1Num + iArray2Num));
冒泡排序代码c语言 if (pTempArray == NULL) return;
memcpy(pTempArray, pArray1, iArray1Num * sizeof(int));
memcpy(pTempArray + iArray1Num, pArray2, iArray2Num * sizeof(int)); sortArray(pTempArray, (iArray1Num + iArray2Num));
//进⾏了数组剔除,并且赋值给输出数组中
int idx = 0;
pOutputArray[0] = pTempArray[0];
for (int q = 1; q < iArray1Num + iArray2Num; q++)
{
if (pOutputArray[idx] == pTempArray[q]) continue;
idx++;
pOutputArray[idx] = pTempArray[q];
}
document下载app *iOutputNum = idx + 1;
free(pTempArray);
return;
}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论