C++ Program to Sort Elements in Lexicographical Order (Dictionary Order)

To understand this example, you should have the knowledge of the following C++ programming topics:


This program takes 10 words from the user and sorts them in lexicographical order.

We have used the bubble sort algorithm in this program. So please visit our Bubble Sort Algorithm tutorial before proceeding.


Example: Sort Words in Dictionary Order

#include <iostream>
using namespace std;

int main()
{
    string str[10], temp;

    cout << "Enter 10 words: " << endl;
    for(int i = 0; i < 10; ++i)
    {
      getline(cin, str[i]);
    }

    // Use Bubble Sort to arrange words
    for (int i = 0; i < 9; ++i) {
        for (int j = 0; j < 9 - i; ++j) {
            if (str[j] > str[j + 1]) {
                temp = str[j];
                str[j] = str[j + 1];
                str[j + 1] = temp;
            }
        }
    }

    cout << "In lexicographical order: " << endl;

    for(int i = 0; i < 10; ++i)
    {
       cout << str[i] << endl;
    }
    return 0;
}

Output

Enter 10 words: 
C 
C++
Java
Python
Perl
R
Matlab
Ruby
JavaScript
PHP
In lexicographical order: 
C
C++
Java
JavaScript
Matlab
PHP
Perl
Python
R
Ruby

To solve this program, an array of string object str[10] is created.

The 10 words entered by the user are stored in this array.

Then, the array is sorted in lexicographical order using bubble sort and displayed on the screen.