Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Program C untuk mengisih senarai nombor yang diberikan dalam tertib menaik menggunakan algoritma isihan gelembung

Program C untuk mengisih senarai nombor yang diberikan dalam tertib menaik menggunakan algoritma isihan gelembung

王林
王林ke hadapan
2023-09-23 13:01:021171semak imbas

Program C untuk mengisih senarai nombor yang diberikan dalam tertib menaik menggunakan algoritma isihan gelembung

Dalam bahasa pengaturcaraan C, isihan gelembung ialah teknik isihan paling mudah, juga dikenali sebagai isihan pertukaran.

Proses isih buih

  • Bandingkan elemen pertama dengan unsur-unsur lain dalam senarai dan tukarkannya jika tidak teratur ( pertukaran).

  • Ulang senarai operasi yang sama untuk elemen lain dalam senarai sehingga semua elemen diisih.

Algoritma

Diberikan di bawah adalah algoritma dengan menggunakan teknologi pengisihan gelembung -

# 🎜#Step 🎜 - Mula

Langkah 2 - Dapatkan senarai (susunan), nombor

#🎜🎜 #Langkah 3🎜🎜 #Langkah 3 − senarai baca(senarai,bilangan)

Langkah 4

− senarai cetak(senarai,bilangan)

# 🎜🎜#Langkah 5 - bub_sort(senarai,bilangan)

Langkah 6 - senarai cetak(senarai,bilangan)

readlist (list, num)
#🎜 🎜##🎜🎜🎜🎜🎜🎜🎜 # − Berhenti

1. for j = 0 to num
2. read list[j].

Cetak senarai(senarai,nombor)

1. for j =0 to num
2. write list[j].
bub_sort(senarai,nombor)

1. for i = 0 to num
2. for j =0 to (num – i)
3. if( list[j] > list[j+1])
4. swapList( address of list[j], address of list[j+1])

1. temp = value at list[j]
2. value at list[j] = value at list[j+1]
3. value at list[j+1] = temp
#🎜List(the#s of wap list j], alamat senarai[j+1])
#include <stdio.h>
#define MAX 10
void swapList(int *m,int *n){
   int temp;
   temp = *m;
   *m = *n;
   *n = temp;
}
/* Function for Bubble Sort */
void bub_sort(int list[], int n){
   int i,j;
   for(i=0;i<(n-1);i++)
      for(j=0;j<(n-(i+1));j++)
         if(list[j] > list[j+1])
            swapList(&list[j],&list[j+1]);
   }
   void readlist(int list[],int n){
   int j;
   printf("</p><p>Enter the elements: </p><p>");
   for(j=0;j<n;j++)
      scanf("%d",&list[j]);
   }
   /* Showing the contents of the list */
   void printlist(int list[],int n){
      int j;
   for(j=0;j<n;j++)
      printf("%d\t",list[j]);
}
void main(){
   int list[MAX], num;
   printf(" Enter the number of elements </p><p>");
   scanf("%d",&num);
   readlist(list,num);
   printf("</p><p></p><p>Elements in the list before sorting are:</p><p>");
   printlist(list,num);
   bub_sort(list,num);
   printf("</p><p></p><p>Elements in the list after sorting are:</p><p>");
   printlist(list,num);
}
Contoh

Berikut ialah senarai senarai menggunakan teknologi pengisihan gelembung C program untuk mengisih senarai nombor dalam susunan menaik #

Output

#🎜 🎜🎜# Apabila melaksanakan prosedur di atas, keputusan berikut dihasilkan -

Enter the number of elements
10

Enter the elements:
11
23
45
1
3

6
35
69
10
22


Elements in the list before sorting are:
11 23 45 1 3 6 35 69 10 22

Elements in the list after sorting are:
1 3 6 10 11 22 23 35 45 69

Atas ialah kandungan terperinci Program C untuk mengisih senarai nombor yang diberikan dalam tertib menaik menggunakan algoritma isihan gelembung. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam