Table of Contents
Sort the array in descending order using bubble sort technique
algorithm
Example
Output
Use selection sort technique to sort the array in descending order
in conclusion
Home Backend Development C++ C++ program: Sort array elements in descending order

C++ program: Sort array elements in descending order

Sep 09, 2023 pm 07:09 PM
array sort descending order

C++ program: Sort array elements in descending order

Arranging data items in a proper form is an important task when solving some problems.

efficient way. The element sorting problem is one of the most commonly discussed Arrangement problem. In this article we will see how to arrange array elements Sort in descending order of their values ​​(in C).

There are many different sorting algorithms used in this field to sort numbers or non-numbers

elements in a given order. In this article, we will introduce only two simple methods sorting. The bubble sort and the selection sort. Let us see them one by one with proper Algorithm and C implementation code.

Sort the array in descending order using bubble sort technique

Bubble sorting technology is one of the most common and simple sorting methods.

elements in the array. This method checks two adjacent elements if they are correct order, then skip to the next elements, otherwise interchange them to place them in correct Arrange the other elements in order and then skip to the next element, otherwise swap them to place them in the correct position order. Then move towards right and do the same for the other pair of values. The bubble Arranged in order. Then move to the right and do the same with the other pair of values. bubble The sorting technique has several stages, at the end of each stage an element is placed in Correct expected position. Let’s take a look at the algorithm of bubble sort technique.

algorithm

  • Read array A and its size n as input
  • For the range of i from 0 to n-1, execute
    • For the range of j from 0 to n - 2, execute
      • If A[j]
      • Exchange A[j] and A[j 1]
  • End if
  • end for
  • end for
  • Example

    #include <iostream>
    using namespace std;
    void display( int arr[], int n ){
       for ( int i = 0; i < n; i++ ) {
          cout << arr[i] << ", ";
       }
    }
    void swap ( int &a, int &b ){
       int temp = a;
       a = b;
       b = temp;
    }
    void solve( int arr[], int n ){
       int i, j;
       for ( i = 0; i < n; i++ ) {
          for ( j = 0; j < n-1; j++ ) {
             if ( arr[j] < arr[ j+1 ] ) {
                swap( arr[j], arr[ j + 1 ] );
             }
          }
       }
    }
    int main(){
       int arr[] = {8, 45, 74, 12, 10, 36, 58, 96, 5, 2, 78, 44, 25, 12, 89, 95, 63, 84};
       int n = sizeof( arr ) / sizeof( arr[0] );
       cout << "Array before sorting: ";
       display(arr, n);
       solve( arr, n );
       cout << "\nArray After sorting: ";
       display(arr, n);
    }
    
    Copy after login

    Output

    Array before sorting: 8, 45, 74, 12, 10, 36, 58, 96, 5, 2, 78, 44, 25, 12, 89, 95, 63, 84, 
    Array After sorting: 96, 95, 89, 84, 78, 74, 63, 58, 45, 44, 36, 25, 12, 12, 10, 8, 5, 2, 
    
    Copy after login

    Use selection sort technique to sort the array in descending order

    In selection sort technique we find minimum element or maximum element Starting from index i in the given array, translated into Chinese: element from the given array starting from index i to the end of this array. Assume we are. Find the largest element. In each stage it finds the minimum value from index i to the end, then Place the element where it needs to be and search again for the next largest element the index i 1 and so on. After completing these phases, the entire array will be sorted index i 1 and so on. After completing these stages, the entire array will be sorted Correspondingly.

    algorithm

    • Read array A and its size n as input
    • For the range of i from 0 to n-1, execute
      • ind := Index of the largest element of A from i to n
      • If A[ i ] < A[ ind ], then
        • Exchange A[ i ] and A[ ind ]
      • End if
    • end for

    Example

    #include <iostream>
    using namespace std;
    void display( int arr[], int n ){
       for ( int i = 0; i < n; i++ ) {
          cout << arr[i] << ", ";
       }
    }
    void swap ( int &a, int &b ){
       int temp = a;
       a = b;
       b = temp;
    }
    int max_index( int arr[], int n, int s, int e ){
       int max = 0, max_ind = 0;
       for ( int i = s; i < e; i++ ) {
          if ( arr[i] > max ) {
             max = arr[i];
             max_ind = i;
          }
       }
       return max_ind;
    }
    void solve( int arr[], int n ){
       int i, j, ind;
       for ( i = 0; i < n; i++ ) {
          ind = max_index( arr, n, i, n );
          if ( arr[i] < arr[ ind ] ) {
             swap( arr[i], arr[ ind ] );
          }
       }
    }
    int main(){
       int arr[] = {8, 45, 74, 12, 10, 36, 58, 96, 5, 2, 78, 44, 25, 12,89, 95, 63, 84};
       int n = sizeof( arr ) / sizeof( arr[0] );
       cout << "Array before sorting: ";
       display(arr, n);
       solve( arr, n );
       cout << "\nArray After sorting: ";
       display(arr, n);
    }
    
    Copy after login

    Output

    Array before sorting: 8, 45, 74, 12, 10, 36, 58, 96, 5, 2, 78, 44, 25, 12, 89, 95, 63, 84, 
    Array After sorting: 96, 95, 89, 84, 78, 74, 63, 58, 45, 44, 36, 25, 12, 12, 10, 8, 5, 2,
    
    Copy after login

    in conclusion

    A sorting problem is a fundamental problem in which we arrange numbers or other values

    in a given permutation logic. There are many different sorting techniques available here understand and implement Implemented and easy to understand. These two methods are bubble sorting technique and Selection sorting techniques. Using these two methods, we have sorted the dataset Descending (non-increasing) sort. These two sorting methods are not very efficient Respect the time, but they are easy to understand. Both methods require O(n2) time Amount of time, where n is the size of the input. Bubble sort can be made faster with simple way Check if there is no swapping in any phase, the next consecutive phase will not happen Change anything.

    The above is the detailed content of C++ program: Sort array elements in descending order. For more information, please follow other related articles on the PHP Chinese website!

    Statement of this Website
    The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

    Hot AI Tools

    Undresser.AI Undress

    Undresser.AI Undress

    AI-powered app for creating realistic nude photos

    AI Clothes Remover

    AI Clothes Remover

    Online AI tool for removing clothes from photos.

    Undress AI Tool

    Undress AI Tool

    Undress images for free

    Clothoff.io

    Clothoff.io

    AI clothes remover

    Video Face Swap

    Video Face Swap

    Swap faces in any video effortlessly with our completely free AI face swap tool!

    Hot Tools

    Notepad++7.3.1

    Notepad++7.3.1

    Easy-to-use and free code editor

    SublimeText3 Chinese version

    SublimeText3 Chinese version

    Chinese version, very easy to use

    Zend Studio 13.0.1

    Zend Studio 13.0.1

    Powerful PHP integrated development environment

    Dreamweaver CS6

    Dreamweaver CS6

    Visual web development tools

    SublimeText3 Mac version

    SublimeText3 Mac version

    God-level code editing software (SublimeText3)

    Hot Topics

    Java Tutorial
    1660
    14
    PHP Tutorial
    1260
    29
    C# Tutorial
    1233
    24
    How to remove duplicate elements from PHP array using foreach loop? How to remove duplicate elements from PHP array using foreach loop? Apr 27, 2024 am 11:33 AM

    The method of using a foreach loop to remove duplicate elements from a PHP array is as follows: traverse the array, and if the element already exists and the current position is not the first occurrence, delete it. For example, if there are duplicate records in the database query results, you can use this method to remove them and obtain results without duplicate records.

    The Art of PHP Array Deep Copy: Using Different Methods to Achieve a Perfect Copy The Art of PHP Array Deep Copy: Using Different Methods to Achieve a Perfect Copy May 01, 2024 pm 12:30 PM

    Methods for deep copying arrays in PHP include: JSON encoding and decoding using json_decode and json_encode. Use array_map and clone to make deep copies of keys and values. Use serialize and unserialize for serialization and deserialization.

    PHP array key value flipping: Comparative performance analysis of different methods PHP array key value flipping: Comparative performance analysis of different methods May 03, 2024 pm 09:03 PM

    The performance comparison of PHP array key value flipping methods shows that the array_flip() function performs better than the for loop in large arrays (more than 1 million elements) and takes less time. The for loop method of manually flipping key values ​​takes a relatively long time.

    PHP array multi-dimensional sorting practice: from simple to complex scenarios PHP array multi-dimensional sorting practice: from simple to complex scenarios Apr 29, 2024 pm 09:12 PM

    Multidimensional array sorting can be divided into single column sorting and nested sorting. Single column sorting can use the array_multisort() function to sort by columns; nested sorting requires a recursive function to traverse the array and sort it. Practical cases include sorting by product name and compound sorting by sales volume and price.

    Application of PHP array grouping function in data sorting Application of PHP array grouping function in data sorting May 04, 2024 pm 01:03 PM

    PHP's array_group_by function can group elements in an array based on keys or closure functions, returning an associative array where the key is the group name and the value is an array of elements belonging to the group.

    Best Practices for Deep Copying PHP Arrays: Discover Efficient Methods Best Practices for Deep Copying PHP Arrays: Discover Efficient Methods Apr 30, 2024 pm 03:42 PM

    The best practice for performing an array deep copy in PHP is to use json_decode(json_encode($arr)) to convert the array to a JSON string and then convert it back to an array. Use unserialize(serialize($arr)) to serialize the array to a string and then deserialize it to a new array. Use the RecursiveIteratorIterator to recursively traverse multidimensional arrays.

    The role of PHP array grouping function in finding duplicate elements The role of PHP array grouping function in finding duplicate elements May 05, 2024 am 09:21 AM

    PHP's array_group() function can be used to group an array by a specified key to find duplicate elements. This function works through the following steps: Use key_callback to specify the grouping key. Optionally use value_callback to determine grouping values. Count grouped elements and identify duplicates. Therefore, the array_group() function is very useful for finding and processing duplicate elements.

    Exploring the complexity of PHP array deduplication algorithms Exploring the complexity of PHP array deduplication algorithms Apr 28, 2024 pm 05:54 PM

    Complexity of PHP array deduplication algorithm: array_unique(): O(n) array_flip()+array_keys(): O(n) foreach loop: O(n^2)

    See all articles