C语言中常用的两种排序法(冒泡法/插入法)

原创 2005年04月28日 00:56:00

冒泡法:


#include <stdio.h>
void main()
{
int i;
int j;
int temp;
int arr[5]={23,90,9,25,16};


for (i=3;i>=0;i--)
{
  for (j=4;j>=4-i;j--)
  {
   if (arr[j]<arr[j-1])
   {
    temp=arr[j];
    arr[j]=arr[j-1];
    arr[j-1]=temp;
   }
  }
}
printf ("排序后为:/n");
for (i=0;i<5;i++)
{
  printf ("/n%d",arr);
}
}

插入法:


#include <stdio.h>
void insertnum(int arrnum[],int i,int j);
void main()
{
int i,j;


int arr[5]={23,90,9,25,16};


for (i=1;i<5;i++)
{
  for (j=0;j<i;j++)
  {
   if (arr[j]>arr)
   {
    insertnum(arr,i,j);
   }
  }
}
printf ("排序后为:/n");
for (i=0;i<5;i++)
{
  printf ("%d/t",arr);
}
}

void insertnum(int arrnum[],int x,int y)
{
int temp;
temp=arrnum[x];
for (;x>y;x--)
{
  arrnum[x]=arrnum[x-1];
}
arrnum[x]=temp;
}


void insertnum(int arrnum[],int x,int y)
{
int temp;
temp=arrnum[x];
for (;x>y;x--)
{
  arrnum[x]=arrnum[x-1];
}
arrnum[x]=temp;
}


插入法:


#include <stdio.h>
void insertnum(int arrnum[],int i,int j);
void main()
{
int i,j;


int arr[5]={23,90,9,25,16};


for (i=1;i<5;i++)
{
  for (j=0;j<i;j++)
  {
   if (arr[j]>arr)
   {
    insertnum(arr,i,j);
   }
  }
}
printf ("排序后为:/n");
for (i=0;i<5;i++)
{
  printf ("%d/t",arr);
}
}

void insertnum(int arrnum[],int x,int y)
{
int temp;
temp=arrnum[x];
for (;x>y;x--)
{
  arrnum[x]=arrnum[x-1];
}
arrnum[x]=temp;
}


void insertnum(int arrnum[],int x,int y)
{
int temp;
temp=arrnum[x];
for (;x>y;x--)
{
  arrnum[x]=arrnum[x-1];
}
arrnum[x]=temp;
}

C语言中冒泡法、选择法、插入法三种常见排序算法

一、冒泡法  算法要求:用起泡法对10个整数按升序排序。     算法分析:如果有n个数,则要进行n-1趟比较。在第1趟比较中要进行n-1次相邻元素的两两比较,在第j趟比较中要进行n-j次...

C语言中冒泡法、选择法、插入法三种常见排序算法分析

一、冒泡法(起泡法)  算法要求:用起泡法对10个整数按升序排序。     算法分析:如果有n个数,则要进行n-1趟比较。在第1趟比较中要进行n-1次相邻元素的两两比较,在第j趟比较中要进行n-j...

C语言中冒泡法、选择法、插入法三种常见排序算法分析

标 题: C语言中冒泡法、选择法、插入法三种常见排序算法分析 作 者: lcx4 时 间: 2016-4-17 链 接: http://www.lcx4.com/?post=53 ...

C语言8种排序算法及其实现 1.希尔排序 2.二分插入法 3.直接插入法 4.带哨兵的直接排序法 5.冒泡排序 6.选择排序 7.快速排序 8.堆排序

一.希尔(Shell)排序法(又称宿小增量排序,是1959年由D.L.Shell提出来的) /* Shell 排序法 */ #include void sort(int v[],int n) { ...

数据结构和算法——排序算法(冒泡法 选择法 插入法 快速法)实现

1.排序方法:   比较排序:冒泡排序,选择排序,插入排序,快速排序   不用比较的排序:希尔排序,堆排序 冒泡选择插入复杂度是一个级别的O(N^2) 快速堆归并排序是O(NlogN)  ...

基础排序算法:冒泡法,选择法,直接插入法,归并排序法

冒泡排序: /* * 冒泡法: * 每次将相邻数中的较小值排到较大值的前面 * 直到无需再交换为止 * */ #include using namespace std; template...

几种常见排序算法的实现(冒泡法,选择法,插入法,快速排序、堆排序)

#include "stdafx.h" //in the i th round ordering, j always points to the max element so far void bu...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C语言中常用的两种排序法(冒泡法/插入法)
举报原因:
原因补充:

(最多只允许输入30个字)