Rumah > pembangunan bahagian belakang > C++ > 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

王林
Lepaskan: 2023-09-23 13:01:02
ke hadapan
1217 orang telah melayarinya

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)
Salin selepas log masuk
#🎜 🎜##🎜🎜🎜🎜🎜🎜🎜 # − Berhenti

1. for j = 0 to num
2. read list[j].
Salin selepas log masuk

Cetak senarai(senarai,nombor)

1. for j =0 to num
2. write list[j].
Salin selepas log masuk
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])
Salin selepas log masuk

1. temp = value at list[j]
2. value at list[j] = value at list[j+1]
3. value at list[j+1] = temp
Salin selepas log masuk
#🎜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);
}
Salin selepas log masuk
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
Salin selepas log masuk

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!

sumber:tutorialspoint.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan