21xrx.com
2024-05-20 12:12:03 Monday
登录
文章检索 我的文章 写文章
C++字符串冒泡排序
2023-07-09 20:28:03 深夜i     --     --
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++字符串冒泡排序是一种基础而重要的排序算法,能够对字符串按照字典序进行排序。虽然它的时间复杂度比较高,但是在数据量比较小的情况下,它还是非常实用的。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复