C++ 重新排列数组元素
不确定它是否重复。给定具有前N个整数和后N个字符的数据结构。A=i1 i2 i3。。。在c1 c2 c3中。。。中国。我需要一个就地算法来重新排列元素,如A=i1c1c2c2。。。在中国,我认为这是一个标准的排序问题 您只需要一个好的比较函数,然后使用qsort 你熟悉qsort吗? 您是否创建了任何可以与我们共享的比较函数 编辑 正如评论员指出的,qsort、std::sort和其他类似的例程需要大小相同的对象。因为这个问题需要一个int和char数组,它们的大小不同,在C/C++中严格来说是不可能的,所以需要更多的信息 这个数组究竟是如何声明的?INT和CHAR有多大?字符的存在是否意味着N被限制为255C++ 重新排列数组元素,c++,c,arrays,C++,C,Arrays,不确定它是否重复。给定具有前N个整数和后N个字符的数据结构。A=i1 i2 i3。。。在c1 c2 c3中。。。中国。我需要一个就地算法来重新排列元素,如A=i1c1c2c2。。。在中国,我认为这是一个标准的排序问题 您只需要一个好的比较函数,然后使用qsort 你熟悉qsort吗? 您是否创建了任何可以与我们共享的比较函数 编辑 正如评论员指出的,qsort、std::sort和其他类似的例程需要大小相同的对象。因为这个问题需要一个int和char数组,它们的大小不同,在C/C++中严格来说是
再说一次,一些代码确实会有帮助 我认为这是一个标准的排序问题 您只需要一个好的比较函数,然后使用qsort 你熟悉qsort吗? 您是否创建了任何可以与我们共享的比较函数 编辑 正如评论员指出的,qsort、std::sort和其他类似的例程需要大小相同的对象。因为这个问题需要一个int和char数组,它们的大小不同,在C/C++中严格来说是不可能的,所以需要更多的信息 这个数组究竟是如何声明的?INT和CHAR有多大?字符的存在是否意味着N被限制为255
再说一次,一些代码确实会有帮助 您的问题相当于将2xN矩阵变换到位。你可以在这里阅读理论:
也许在2xN矩阵的特殊情况下,存在一个更简单的算法,但是我想不出任何算法。一般的想法是遵循排列的循环。您的问题相当于在适当的位置转置2xN矩阵。你可以在这里阅读理论:
也许在2xN矩阵的特殊情况下,存在一个更简单的算法,但是我想不出任何算法。总体思路是遵循排列的循环。这个问题似乎有三个问题 在同一列表中插入两种类型的项目。有几种方法可以做到这一点,但不会很好。 要分离字符和整数的数据。 每个分区都要排序字符和整数。
这个问题似乎有三个问题 在同一列表中插入两种类型的项目。有几种方法可以做到这一点,但不会很好。 要分离字符和整数的数据。 每个分区都要排序字符和整数。
几乎重复:问题是什么?当然,我们不会为您编写所有代码。你有什么代码可以分享吗?您遇到过我们可以帮助您解决的任何具体问题吗?顺便问一下:一个C/C++数组如何在不进行大量类型转换的情况下同时保存字符和整数?@abelenky:我尝试将值输出到另一个数组,但想不出一种就地方法。@yadab:不,这将转换i1 i2 i3。。。在c1 c2 c3中。。。中国到c1 c2 c3。。。中国i1 i2 i3。。。几乎重复:问题是什么?当然,我们不会为您编写所有代码。你有什么代码可以分享吗?您遇到过我们可以帮助您解决的任何具体问题吗?顺便问一下:一个C/C++数组如何在不进行大量类型转换的情况下同时保存字符和整数?@abelenky:我尝试将值输出到另一个数组,但想不出一种就地方法。@yadab:不,这将转换i1 i2 i3。。。在c1 c2 c3中。。。中国到c1 c2 c3。。。中国i1 i2 i3。。。在有C++版本时,为什么要使用C库?STD::SORTE您需要维护Its/CARS出现的顺序,所以排序不能工作。任何稳定的排序合并、插入排序、冒泡排序都会起作用,但是Q排序Quasr排序不稳定,因此OP需要的不是工作。为什么有C++库时有C++版本?std::Sorty您需要保持整数/字符的显示顺序,因此排序将不起作用。任何稳定的排序mergeSort、insertionSort、bubbleSort都会起作用,但qsort quickSort不稳定,所以它不能满足OP的要求。你不能用@André:不。有什么联系?存在一个简单的2xN算法:你不能用@André:不。有什么联系?存在一个简单的2xN算法: