Line 4: Line 4:
 
Complexity <math>\theta(n)</math>
 
Complexity <math>\theta(n)</math>
  
No. of swaps in the worst case = n/2
+
No. of swaps in the worst case = <math>\lfoor n/2 \rfloor</math>
  
 
<syntaxhighlight lang="c">
 
<syntaxhighlight lang="c">

Revision as of 21:29, 15 November 2013

Makes the positive numbers appear after the negative numbers in an array.

Complexity <math>\theta(n)</math>

No. of swaps in the worst case = <math>\lfoor n/2 \rfloor</math>

<syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

       int i,n,pi,ni, count = 0;
       int a[1000];
       printf("Enter size of array: ");
       scanf("%d",&n);
       printf("Enter numbers of array\n");
       for(i=0; i<n; i++)
       {
               scanf("%d",&a[i]);
       }
       ni =n-1;
       while(a[ni] >= 0)
               ni--;
       pi = 0;
       while(a[pi] <0)
               pi++;
       while(ni >pi)
       {
               int temp = a[pi];
               a[pi] = a[ni];
               a[ni] = temp;
               while(a[ni] >= 0)
                       ni--;
               while(a[pi] <0)
                       pi++;
       }
       for(i=0; i<n; i++)
       {
               printf("%d ", a[i]);
       }


} </syntaxhighlight>

Makes the positive numbers appear after the negative numbers in an array.

Complexity <math>\theta(n)</math>

No. of swaps in the worst case = n/2

<syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

       int i,n,pi,ni, count = 0;
       int a[1000];
       printf("Enter size of array: ");
       scanf("%d",&n);
       printf("Enter numbers of array\n");
       for(i=0; i<n; i++)
       {
               scanf("%d",&a[i]);
       }
       ni =n-1;
       while(a[ni] >= 0)
               ni--;
       pi = 0;
       while(a[pi] <0)
               pi++;
       while(ni >pi)
       {
               int temp = a[pi];
               a[pi] = a[ni];
               a[ni] = temp;
               while(a[ni] >= 0)
                       ni--;
               while(a[pi] <0)
                       pi++;
       }
       for(i=0; i<n; i++)
       {
               printf("%d ", a[i]);
       }


} </syntaxhighlight>