CPP   22
Bubble Sort
Guest on 20th September 2023 12:19:33 AM


  1. #include<stdio.h>
  2. #include<stdlib.h>
  3. int f(int);
  4. int N,M,i,j,array[400][400],k=-1,brray[80000],h,r,l,t,p,c,v;
  5. int main(void)
  6. {
  7.    
  8.     scanf("%d %d",&N,&M);
  9.     for(i=0;i<N;i++)
  10.     {
  11.      for(j=0;j<M;j++)
  12.      scanf("%d",&array[i][j]);              
  13.                     }
  14.     for(i=0;i<N;i++)
  15.     {
  16.      for(j=0;j<M;j++)              
  17.    { if(f(array[i][j])>0)              
  18.      {
  19.       k++;
  20.       brray[k]=f(array[i][j]);                                  
  21.                                         }
  22.      
  23.     }               }
  24.     for (h=0;h<k;h++)//Bubble Sort
  25.  
  26. {
  27.  
  28. r = h;
  29.  
  30. for (l=h+1; l < k+1; l++)
  31.  
  32. {
  33.  
  34. if (brray[l] < brray[r])
  35.  
  36. { r = l; }
  37.  
  38. }
  39.  
  40. t = brray[r];
  41.  
  42. brray[r] = brray[h];
  43.  
  44. brray[h] = t;
  45.  
  46. }
  47.     for(p=k;p>=0;p--)
  48.     printf("%d\n",brray[k]);
  49.     system("pause");
  50.    
  51.     }
  52.    
  53.     int f(int crray[400][400])
  54.     {
  55.         if(crray[c][v]==1&&0<=c<=N-1&&0<=v<=M-1)
  56.         {
  57.         crray[c][v]=2;
  58.         return (1+f(crray[c-1][v])+f(crray[c+1][v])+f(crray[c][v-1])+f(crray[c][v+1]));
  59.        
  60.         }
  61.         else
  62.         return 0;
  63.          
  64.        
  65.        
  66.         }

Raw Paste

Login or Register to edit or fork this paste. It's free.