Computer >> Máy Tính >  >> Lập trình >> C ++

Chương trình C ++ để sắp xếp các phần tử theo thứ tự từ vựng (thứ tự từ điển)


Thứ tự từ vựng biểu thị cách sắp xếp các từ trong danh sách, dựa trên thứ tự bảng chữ cái theo bảng chữ cái của chúng. Ví dụ -

List of words:
Harry
Adam
Sam

Lexicographical order of words:
Adam
Harry
Sam

Một chương trình để sắp xếp các phần tử theo thứ tự từ vựng như sau -

Ví dụ

#include <iostream>
using namespace std;
int main() {
   int i,j;
   string s[5], temp;
   cout<<"Enter the elements..."<<endl;

   for(i = 0; i < 5; ++i)
   getline(cin, s[i]);
   
   for(i = 0; i < 4; ++i)
   for(j = i+1; j < 5; ++j) {
      if(s[i] > s[j]) {
         temp = s[i];
         s[i] = s[j];
         s[j] = temp;
      }
   }
   cout << "The elements in lexicographical order are... " << endl;
   for(int i = 0; i < 5; ++i)
   cout << s[i] << endl;
   return 0;
}

Đầu ra

Kết quả của chương trình trên như sau -

Enter the elements…
Orange
Grapes
Mango
Apple
Guava

The elements in lexicographical order are...
Apple
Grapes
Guava
Mango
Orange

Trong chương trình trên, chuỗi s [] được định nghĩa và các phần tử được nhập bởi người dùng. Điều này được đưa ra dưới đây -

string s[5], temp;
cout<<"Enter the elements..."<<endl;
for(i = 0; i < 5; ++i)
getline(cin, s[i]);

Các phần tử được sắp xếp theo thứ tự bảng chữ cái bằng cách sử dụng các vòng lặp for lồng nhau. Đoạn mã cho điều này như sau -

for(i = 0; i < 4; ++i)
for(j = i+1; j < 5; ++j) {
   if(s[i] > s[j]) {
      temp = s[i];
      s[i] = s[j];
      s[j] = temp;
   }
}

Cuối cùng tất cả các phần tử theo thứ tự từ vựng được hiển thị. Điều này được đưa ra dưới đây -

cout << "The elements in lexicographical order are... " << endl;
for(int i = 0; i < 5; ++i)
cout << s[i] << endl;