C语言 冒泡排序

冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。

冒泡排序(这里只讨论从小到大排序)可以通过二种方式实现,分别是将最小值依次移动到头部和将最大值依次移动到尾部。

 

代码实现

代码采用从数组头部轮询的方式:

#include <stdio.h>
#define INTEGER_RANGE 10  //数字范围
void bubule_sort(int *array, int len);

int main()
{
  int i = 0;
  int array[INTEGER_RANGE] = {0};
  printf("请输入10个数\n");
  for(i = 0; i < INTEGER_RANGE; i++)
      scanf("%d", array + i);
  bubule_sort(array, INTEGER_RANGE);
  printf("排序后:\n");
  for(i = 0; i < INTEGER_RANGE; i++)
      printf("%d ", array[i]);
  printf("\n");
  return 0;
}
/**
* @brief 冒泡排序
* @param array:数组 len:数组长度
* @return 空
*/
void bubule_sort(int *array, int len)
{
  int i = 0;
  int j = 0;
  int tmp = 0;
  for(i = 0; i < len - 1; i++)
  {
      for(j = 0; j < len -1 - i; j++)
      {
          if(array[j] > array[j + 1])
          {
              tmp = array[j];
              array[j] = array[j + 1];
              array[j + 1] = tmp;
          }
      }
  }
}

 

运行结果

在这里插入图片描述

 

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注编程宝库的更多内容!

 一、 前言本节文章主要说明浅拷贝和深拷贝的优缺点,以及仿写string类的逻辑并分析实现过程如果人对一个事物感兴趣,总是那么好奇,就会刨根问底 二、 浅拷贝与深拷贝优缺点1. ...