C编程:找出一个整形数组中最大K个数的下标
C编程:找出一个整形数组中最大K个数的下标
[解决办法]
一个方法是:
创建一个结构,包含下标。
创建结构数组复制所有数据。
对结构数组,用快速选择,求出最大K个数。
输出结构中的下标。
[解决办法]
另一个方法,是创建指针或者下标数组。
每个不指针或者下标对应给出的数组中的元素。
对指针或者下标快速选择。
输出下标。
[解决办法]
两个数组a和b,a里面存的是整数,b里面存a数组下标。b数组初始化1到n,然后对b数组按照a数组的值从大到小进行排序,规则如下 :
if (a[b[i]] <= a[b[i+1]])
{
int temp = b[i];
b[i] = b[i+1];
b[i+1] = temp;
}