Search
 
SCRIPT & CODE EXAMPLE
 

C

cocktail sort in c

// C++ implementation of Cocktail Sort
#include <bits/stdc++.h>
using namespace std;
 
// Sorts arrar a[0..n-1] using Cocktail sort
void CocktailSort(int a[], int n)
{
    bool swapped = true;
    int start = 0;
    int end = n - 1;
 
    while (swapped)
    {
        // reset the swapped flag on entering
        // the loop, because it might be true from
        // a previous iteration.
        swapped = false;
 
        // loop from left to right same as
        // the bubble sort
        for (int i = start; i < end; ++i)
        {
            if (a[i] > a[i + 1]) {
                swap(a[i], a[i + 1]);
                swapped = true;
            }
        }
 
        // if nothing moved, then array is sorted.
        if (!swapped)
            break;
 
        // otherwise, reset the swapped flag so that it
        // can be used in the next stage
        swapped = false;
 
        // move the end point back by one, because
        // item at the end is in its rightful spot
        --end;
 
        // from right to left, doing the
        // same comparison as in the previous stage
        for (int i = end - 1; i >= start; --i)
        {
            if (a[i] > a[i + 1]) {
                swap(a[i], a[i + 1]);
                swapped = true;
            }
        }
 
        // increase the starting point, because
        // the last stage would have moved the next
        // smallest number to its rightful spot.
        ++start;
    }
}
 
/* Prints the array */
void printArray(int a[], int n)
{
    for (int i = 0; i < n; i++)
        printf("%d ", a[i]);
    printf("
");
}
 
// Driver code
int main()
{
    int a[] = { 5, 1, 4, 2, 8, 0, 2 };
    int n = sizeof(a) / sizeof(a[0]);
    CocktailSort(a, n);
    printf("Sorted array :
");
    printArray(a, n);
    return 0;
}
Comment

PREVIOUS NEXT
Code Example
C :: find all hyperlinks <a in p tag 
C :: c hello word 
C :: how to do Employing defensive code in the UI to ensure that the current frame is the most top level window 
C :: print in c 11111 00000 11111 00000 11111 
C :: While loop output 
C :: ansi c write unsigned short to file 
C :: install lib juicyPixel in haskell 
C :: rand in c 
C :: how to get out of function in c 
C :: pointer operator 
C :: e sharm card jobkhozo.com 
C :: how to output in green in c 
C :: java Node<E 
C :: injection 
C :: float para numeros aleatorios em c 
C :: assembly to c code converter 
C :: networkx remove attributes 
C :: C program determines the height status for heights in cm 
C :: wpdb add temporary while drop table 
C :: buildCheckFunction(locations) 
C :: user define 
C :: c++ sum of ascii string 
C :: pointers c 
C :: how to get value of multidimensional array in c 
C :: c check if is a right triangle 
Dart :: flutter flotingactionbutton position 
Dart :: flutter padding top and bottom 
Dart :: canonical tag 
Dart :: flutter textfield with icon onclick 
Dart :: check if isempty TextEditingController flutter 
ADD CONTENT
Topic
Content
Source link
Name
4+9 =