Sorting and Searching

Sorting

Sorting merupakan sebuah cara di dalam pemrograman c untuk mengurutkan data-data.Biasanya data diurutkan berdasarkan 2 tipe yaitu ascending dan descending.

Ada beberapa metode dalam melakukan sorting yaitu:

1.Bubble Sort

void sort(int *angka,int n)
{
       int j;
       for(int i=0;i<n;i++)
       {
             for(j=n-1;j>=i;j--)
             {
                  if(angka[n-1] > angka[j])
                               swap(&data[j-1],&data[j]);
}

2.Selection Sort


for(i=0; i<N-1; i++){      /* N=number of data */
  Set idx_smallest equal to i
  for(j=i+1; j<N; j++){
  If array[ j ] < array [ idx_smallest ] then idx_smallest = j
    }
  Swap array[ i ] with array[ idx_smallest ]
}

3.Insertion Sort

for(i=1; i<n; i++) {
     x = A[i], insert x to its suitable place between A[0] and A[i-1].
}

Searching


Merupakan cara untuk mencari sebuah data yang dibutuhkan dengan menggunakan key index.

Macam-macam searching:

1.Linear Search

int main (){      int hasil , dicari ,n , i , angka[1000];    

      scanf("%d", &n);    
      for (int  i = 0; i < n; i ++ )           {                  scanf("%d", &angka[i]);            }
       scanf("%d", &dicari);                   hasil = linear_search ( angka ,dicari ,n );
              if ( hasil == -1 )            {                   printf("Tidak ditemukan");             }       else             {                   printf("%d ditemukan di indeks ke %d" ,cari ,hasil);             }       return 0;}

2.Binary Search

int main (){    int cari , hasil ,n;    int angka[1000];
   
    scanf("%d" , &n);
  
    for ( int i = 0; i < n; i ++ )    {
        scanf("%d"&angka[i]);    }
  
    scanf("%d", &cari);
    hasil = biner ( cari , n ,angka );
    if  hasil == - 1 )    {        printf("Data tidak ditemukan");    }    else    {        printf("Angka %d ditemukan di indeks %d", cari ,hasil+1);    }
    return 0;}

Komentar