561. 数组拆分 - 力扣(LeetCode)
快排并从第一位开始隔位取数字
代码语言:javascript复制int cmp(const void*a,const void*b)
{
return *(int*)a-*(int*)b;
}
int arrayPairSum(int* nums, int numsSize) {
qsort(nums,numsSize,sizeof(int),cmp);
int sum=0;
for(int i=0;i<numsSize;i =2)
{
sum =nums[i];
}
return sum;
}
594. 最长和谐子序列 - 力扣(LeetCode)
代码语言:javascript复制int cmp(const void*a,const void*b)
{
return *(int*)a-*(int*)b;
}
int findLHS(int* nums, int numsSize){
qsort(nums,numsSize,sizeof(nums[0]),cmp);
int ret=0;
int begin=0;
for(int end=0;end<numsSize;end )
{
if(nums[end]-nums[begin]>1)
{
begin ;//若差值大于1,则左指针向右移,缩小二者差距
}
if(nums[end]-nums[begin]==1)
{
ret=end-begin 1;
}
}
return ret;
}
575. 分糖果 - 力扣(LeetCode)
代码语言:javascript复制int cmp(const void*a,const void *b){
return *(int*)a-*(int*)b;
}
int distributeCandies(int* candyType, int candyTypeSize) {
qsort(candyType,candyTypeSize,sizeof(int),cmp);
int count=1;
for(int i=1;i<candyTypeSize;i )
{
if(candyType[i]!=candyType[i-1])
{
count ;
}
}
return (candyTypeSize/2)>count?count:(candyTypeSize/2);
}