C ++选择字符串对象数组的排序

时间:2011-09-19 01:26:10

标签: c++ arrays string sorting selection

我正在尝试为用户输入的字符串对象数组实现选择排序功能。就争论而言,我是在正确的道路上吗?感谢

void selectionSort(char ARRAY[], int size)
{
int startScan, minIndex, minValue;

for (startScan = 0; startScan < (size - 1); startScan++)
{
    minIndex = startScan;
    minValue = ARRAY[startScan];
    for (int index = startScan + 1; index < size; index++)
    {
        if (ARRAY[index] < minValue)
        {
            minValue = ARRAY[index];
            minIndex = index;
        }
    }
    ARRAY[minIndex] = ARRAY[startScan];
    ARRAY[startScan] = minValue;
}
}

2 个答案:

答案 0 :(得分:2)

您可能希望使用STL库并将参数声明为

std::vector< std::string >

然后sort函数将直接工作,就像这个

std::vector< std::string > array;
std::sort (array.begin(), array.end());

答案 1 :(得分:0)

如果您 排序字符串对象,则存在很多问题。您编写的代码对字符进行排序。这样:

char ARRAY[]

是一个字符数组。这些:

char *ARRAY[]
std::string ARRAY[]

是字符串数组。您必须使用其中任何一个适当地更改您的功能。