用C++对二维数组中的浮点数进行排序
Sort floating point numbers in a 2D array in C++
我遇到了std:sort
,但它在我的情况下不起作用。我有一个2D浮点数组,其中我只需要对一列进行排序。FLOATS的任何排序算法都可以。不过我当时在考虑合并排序。任何人
void selectionSort(float x[], int n) {
float curr = 0, min = 0, i = 0, temp;
for (curr = 0; curr < n-1; curr++) {
min = curr; // assume this is smallest
//--- Look over remaining elements to find smallest.
for (i = curr+1; i < n; i++) {
if (x[i] < x[min]) {
//--- Remember index for latter swap.
min = i;
}
}
//--- Swap smallest remaining element
temp = x[curr];
x[curr] = x[min];
x[min] = temp;
}}
VS 2010输出一个错误:下标不是积分类型
C/C++不允许实际数据类型(float
、double
等)作为下标运算符来声明数组的大小或进行访问。以下是一个错误:
int ArraySize[10.0];
因此,以下内容:
ArraySize[4.0];
必须传递一个整数类型(int
、long
、char
、bool
、unsigned
等)来指定大小并访问元素。如果变量是实数类型,则可以将其类型转换为int(或者,更优选size_t
)
float nIndex = 5.0;
ArraySize[(size_t)nIndex];
如果你有一个类,那么你可以用你喜欢的任何类型重载下标运算符!
相关文章:
- 在C++中,将大的无符号浮点数四舍五入为整数的最佳方法是什么
- 如何修复此错误:未定义对"距离(浮点数,浮点数,浮点数,浮点数,浮点数)"的引用
- C++浮点数据类型和字符串数据类型无法子到模板函数中
- 使用提升将数据从 PyObject 复制到浮点数 *
- 使用浮点数和双精度数的非常小数字的数学
- 使用英特尔内联函数将打包的 8 位整数乘以浮点数向量
- 如何在 c++ 中将小数点后两位数的浮点数分配给另一个浮点数
- 返回浮点数的小数位数
- txt 文件中浮点数的最大和最小值
- 为什么 std::cout 打印浮点数、双精度和长双精度到相同的小数精度?
- 将浮点数转换为无符号字符数组并打印出来
- 如何对向量进行排序<浮点数,字符串>而不考虑字符串
- C++ 按数值对元组<字符串、浮点数>然后按字典顺序排序的向量
- C/C++ - 将浮点数转换为字节数组,以便字节保持排序
- 编写程序,导入三个浮点数a,b和c.按升序排序
- 如何将radix排序用于一系列浮点数
- 将范围有限的浮点数转换为无符号的整数,以保持排序顺序和精度
- 测量在算法库中对100万个0到1之间的浮点数进行排序的时间
- 用C++对二维数组中的浮点数进行排序
- 搜索已排序的浮点数数组