diff --git a/01.Array/24.Dutch_National_Flag.txt b/01.Array/24.Dutch_National_Flag.txt new file mode 100644 index 0000000..ade25e3 --- /dev/null +++ b/01.Array/24.Dutch_National_Flag.txt @@ -0,0 +1,59 @@ + #include +#include +#include +using namespace std; +//======================== + +dutchNationalAlgo(int a[], int n){ + int low = 0 ; + int mid = 0 ; + int high = n-1; + int temp; + while(mid<=high){ + switch(a[mid]){ + case 0:{ + temp = a[low]; + a[low] = a[mid]; + a[mid] = temp; + low++; + mid++; + break; + } + case 1:{ + mid++; + break; + } + case 2:{ + temp = a[mid]; + a[mid] = a[high]; + a[high] = temp; + high--; + break; + } + } + } +} + +//======================== + +int main(){ + +//===========MAIN STARTS================ + +cout<<"DPP's Notebook : Dutch National Flag Algorithm"<>n; +int a[n]; +for(int i= 0; i>a[i]; +} +dutchNationalAlgo(a,n); +for(int i= 0; i