C++中的字符串排序(冒泡与选择)
这是我的整数排序代码。它包含两个函数,一个是冒泡排序,另一个是选择排序。是否有一种基本的方法将它们转换为字符串排序函数?谢谢C++中的字符串排序(冒泡与选择),c++,sorting,bubble-sort,selection-sort,C++,Sorting,Bubble Sort,Selection Sort,这是我的整数排序代码。它包含两个函数,一个是冒泡排序,另一个是选择排序。是否有一种基本的方法将它们转换为字符串排序函数?谢谢 #include <iostream> #include <string> using namespace std; void bubbleSort(int array[], int size){ bool swap; int temp; do{ swap = false; for (int count = 0; count &
#include <iostream>
#include <string>
using namespace std;
void bubbleSort(int array[], int size){
bool swap;
int temp;
do{
swap = false;
for (int count = 0; count < (size - 1); count++){
if (array[count] > array[count + 1]){
temp = array[count];
array[count] = array[count + 1];
array[count + 1] = temp;
swap = true;
}
}
}while (swap);
}
void selectionSort(int 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;
}
}
int main(){
int str[5] = {5, 3, 1, 7, 8};
bubbleSort(str, 5);
selectionSort(str, 5);
}
是的。这很容易。也许你听说过函数char*ptr1,char*ptr2 它逐字符比较字符串字符,并返回: 0-如果字符串相等 0不匹配的第一个字符在ptr1中的值大于在ptr2中的值 因此,您需要将此数组[count]>array[count+1]替换为此strComparray[count],array[count+1]>0。假设你的数组是char*array[]。否则,它将无法正常工作