21xrx.com
2025-06-22 05:21:10 Sunday
登录
文章检索 我的文章 写文章
C++字符串冒泡排序
2023-07-09 20:28:03 深夜i     21     0
C++ 字符串 冒泡排序

C++字符串冒泡排序是一种非常基础和重要的排序算法,它可以对字符串进行排序,让它们按照字典序排列。下面我们就来详细了解一下如何实现C++字符串冒泡排序。

首先,我们需要声明一个字符串数组,用来存储需要排序的字符串。可以使用如下代码:

string arr[] = "banana";

然后,我们使用两层循环来实现冒泡排序。外层循环控制排序的次数,内层循环控制每次排序需要比较的字符个数。代码如下:

for(int i=0; i<5; i++){
  for(int j=0; j<5-i-1; j++){
    if(arr[j]>arr[j+1]){
      swap(arr[j], arr[j+1]);
    }
  }
}

在内层循环中,我们使用一个if语句来比较相邻两个字符串的字典序大小,如果前一个字符串大于后一个字符串,就交换它们的位置,使它们按照升序排列。swap()函数是C++标准库中的一个函数,用来交换两个变量的值。

最后,我们可以使用一个for循环来输出排好序的字符串数组。代码如下:

for(int i=0; i<5; i++){
  cout<<arr[i]<<endl;
}

完整的代码如下所示:

#include<iostream>
#include<algorithm>
#include<string>
using namespace std;
int main(){
  string arr[] = "apple";
  for(int i=0; i<5; i++){
    for(int j=0; j<5-i-1; j++){
      if(arr[j]>arr[j+1]){
        swap(arr[j], arr[j+1]);
      }
    }
  }
  for(int i=0; i<5; i++){
    cout<<arr[i]<<endl;
  }
  return 0;
}

总的来说,C++字符串冒泡排序是一种基础而重要的排序算法,能够对字符串按照字典序进行排序。虽然它的时间复杂度比较高,但是在数据量比较小的情况下,它还是非常实用的。

  
  

评论区