使用气泡排序对字符串进行排序

给定一个字符串数组arr[]。使用气泡排序对给定字符串进行排序,并显示排序后的数组。

null

在里面 气泡排序 ,每当arr[i]>arr[i+1]时,就会交换两个连续的字符串arr[i]和arr[i+1]。较大的值下沉到底部,因此称为下沉排序。在每个过程结束时,较小的值逐渐“冒泡”到顶部,因此称为冒泡排序。

经过所有的过程后,我们将所有字符串按顺序排列。上述算法的复杂度为O(N 2. ).

让我们看看代码片段:

C++

// C++ implementation
#include<bits/stdc++.h>
using namespace std;
#define MAX 100
void sortStrings( char arr[][MAX], int n)
{
char temp[MAX];
// Sorting strings using bubble sort
for ( int i=0; i<n-1; i++)
{
for ( int j=0; j<n-1-i; j++)
{
if ( strcmp (arr[j], arr[j+1]) > 0)
{
strcpy (temp, arr[j]);
strcpy (arr[j], arr[j+1]);
strcpy (arr[j+1], temp);
}
}
}
}
int main()
{
char arr[][MAX] = { "GeeksforGeeks" , "Quiz" , "Practice" , "Gblogs" , "Coding" };
int n = sizeof (arr)/ sizeof (arr[0]);
sortStrings(arr, n);
printf ( "Strings in sorted order are : " );
for ( int i=0; i<n; i++)
printf ( " String %d is %s" , i+1, arr[i]);
return 0;
}


JAVA

// Java implementation
class GFG
{
static int MAX = 100 ;
public static void sortStrings(String[] arr, int n)
{
String temp;
// Sorting strings using bubble sort
for ( int j = 0 ; j < n - 1 ; j++)
{
for ( int i = j + 1 ; i < n; i++)
{
if (arr[j].compareTo(arr[i]) > 0 )
{
temp = arr[j];
arr[j] = arr[i];
arr[i] = temp;
}
}
}
}
// Driver code
public static void main(String[] args)
{
String[] arr = { "GeeksforGeeks" , "Quiz" ,
"Practice" , "Gblogs" , "Coding" };
int n = arr.length;
sortStrings(arr, n);
System.out.println( "Strings in sorted order are : " );
for ( int i = 0 ; i < n; i++)
System.out.println( "String " + (i + 1 ) + " is " + arr[i]);
}
}
// This code is contributed by
// sanjeev2552


C#

// C# implementation
using System;
class GFG
{
static int MAX = 100;
public static void sortStrings(String[] arr,
int n)
{
String temp;
// Sorting strings using bubble sort
for ( int j = 0; j < n - 1; j++)
{
for ( int i = j + 1; i < n; i++)
{
if (arr[j].CompareTo(arr[i]) > 0)
{
temp = arr[j];
arr[j] = arr[i];
arr[i] = temp;
}
}
}
}
// Driver code
public static void Main(String[] args)
{
String[] arr = { "GeeksforGeeks" , "Quiz" ,
"Practice" , "Gblogs" , "Coding" };
int n = arr.Length;
sortStrings(arr, n);
Console.WriteLine( "Strings in sorted order are : " );
for ( int i = 0; i < n; i++)
Console.WriteLine( "String " + (i + 1) +
" is " + arr[i]);
}
}
// This code is contributed by Princi Singh


输出:

Strings in sorted order are :  String 1 is Coding String 2 is Gblogs String 3 is GeeksforGeeks String 4 is Practice String 5 is Quiz

本文由 拉胡尔·阿格拉瓦尔 .如果你喜欢GeekSforgek,并想贡献自己的力量,你也可以写一篇文章,然后将文章邮寄给评论-team@geeksforgeeks.org.看到你的文章出现在Geeksforgeks主页上,并帮助其他极客。 如果您发现任何不正确的地方,或者您想分享有关上述主题的更多信息,请写评论

© 版权声明
THE END
喜欢就支持一下吧
点赞6 分享