C语言实现冒泡排序算法_C 语言

BubblSort.c

#include<stdio.h>

void BubbleSort(int a[],int len)
{
  int i;
  int j;
  int h;
  int temp;
  for(i=0;i<len-1;++i)
  {
    for(j=len-1;j>i;--j)
    {
      if(a[j]<a[j-1])
      {

        temp=a[j];
        a[j]=a[j-1];
        a[j-1]=temp;

      }
    }
      for(h=0;h<len;h++)
      {
        printf(" %d",a[h]);
      }
        printf("\n");
  }
}

int main()
{
  int i=0;
  int a[]={36,25,48,12,25,65,43,57};
  int len=sizeof(a)/sizeof(a[0]);
  BubbleSort(a,len);
  {
    for(i=0;i<len;i++)
      printf(" %d",a[i]);
  }
  printf("\n");
  return 0;
}

以上所述就是本文的全部内容了,希望对大家学习C语言能够有所帮助。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索c语言
, 算法
冒泡排序
c语言冒泡排序算法、c语言的冒泡排序算法、c语言冒泡排序、冒泡法排序 c语言、c语言冒泡排序代码,以便于您获取更多的相关知识。

时间: 2024-08-31 06:16:18

C语言实现冒泡排序算法_C 语言的相关文章

C语言 实现归并排序算法_C 语言

C语言 实现归并排序算法 归并排序(Merge sort)是创建在归并操作上的一种有效的排序算法.该算法是采用分治法(Divide and Conquer)的一个非常典型的应用. 一个归并排序的例子:对一个随机点的链表进行排序 算法描述 归并操作的过程如下: 申请空间,使其大小为两个已经排序序列之和,该空间用来存放合并后的序列 设定两个指针,最初位置分别为两个已经排序序列的起始位置 比较两个指针所指向的元素,选择相对小的元素放入到合并空间,并移动指针到下一位置 重复步骤3直到某一指针到达序列尾

详细总结C++的排序算法_C 语言

排序算法经过了很长时间的演变,产生了很多种不同的方法.对于初学者来说,对它们进行整理便于理解记忆显得很重要.每种算法都有它特定的使用场合,很难通用.因此,我们很有必要对所有常见的排序算法进行归纳. 我不喜欢死记硬背,我更偏向于弄清来龙去脉,理解性地记忆.比如下面这张时间复杂度图,我们将围绕这张图来分析. 上面的这张图来自一个PPT.它概括了数据结构中的所有常见的排序算法,给大家总结如下. 区分稳定与不稳定:快速.希尔.堆.选择不稳定,其他排序算法均稳定. 平均时间复杂度:冒泡,选择,插入是O(n

C语言实现斗地主的核心算法_C 语言

数据结构只选择了顺序表,没有选择链表,灵活性和抽象性不足,不能普适. head.h #ifndef __HEAD_H__ #define __HEAD_H__ #define MAXLEVEL 15 typedef struct CARD{ int number; int level; char *flower; char point; }card;//卡 typedef struct DECK{ int top; int arr[55]; }deck;//牌堆 typedef struct P

C++实现N个骰子的点数算法_C 语言

本文实例讲述了C++实现N个骰子的点数算法,分享给大家供大家参考之用.具体方法如下: 题目要求:把n个骰子仍在地上,所有点数 实现代码如下: #include <iostream> using namespace std; const int g_maxValue = 6; const int number = 6; int array[(number - 1) * g_maxValue + 1]; void probility(int original, int current, int s

C语言实现字符串匹配KMP算法_C 语言

字符串匹配是计算机的基本任务之一. 举例来说,有一个字符串"BBC ABCDAB ABCDABCDABDE",我想知道,里面是否包含另一个字符串"ABCDABD"? 下面的的KMP算法的解释步骤 1. 首先,字符串"BBC ABCDAB ABCDABCDABDE"的第一个字符与搜索词"ABCDABD"的第一个字符,进行比较.因为B与A不匹配,所以搜索词后移一位. 2. 因为B与A不匹配,搜索词再往后移. 3. 就这样,直到字符

字典树的基本知识及使用C语言的相关实现_C 语言

概念      如果我们有and,as,at,cn,com这些关键词,那么trie树(字典树)是这样的:      从上面的图中,我们或多或少的可以发现一些好玩的特性.       第一:根节点不包含字符,除根节点外的每一个子节点都包含一个字符.       第二:从根节点到某一节点,路径上经过的字符连接起来,就是该节点对应的字符串.       第三:每个单词的公共前缀作为一个字符节点保存.   使用范围      既然学Trie树,我们肯定要知道这玩意是用来干嘛的.      第一:词频统计

C++ 冒泡排序数据结构、算法及改进算法_C 语言

程序代码如下: 复制代码 代码如下: // BubbleSort.cpp : 定义控制台应用程序的入口点.//#include "stdafx.h"#include <cmath>#include <iostream>using namespace std;#define  MAXNUM 20template<typename T>void Swap(T& a, T& b){    int t = a;    a = b;    b

c++中八大排序算法_C 语言

概述 排序有内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存. 我们这里说说八大排序就是内部排序. 当n较大,则应采用时间复杂度为O(nlog2n)的排序方法:快速排序.堆排序或归并排序序. 快速排序:是目前基于比较的内部排序中被认为是最好的方法,当待排序的关键字是随机分布时,快速排序的平均时间最短:  1.插入排序-直接插入排序(Straight Insertion Sort) 基本思想: 将一个记录插入

桶排序算法的理解及C语言版代码示例_C 语言

理解:桶排序是计数排序的变种,把计数排序中相邻的m个"小桶"放到一个"大桶"中,在分完桶后,对每个桶进行排序(一般用快排),然后合并成最后的结果.基本思想:桶排序假设序列由一个随机过程产生,该过程将元素均匀而独立地分布在区间[0,1)上.我们把区间[0,1)划分成n个相同大小的子区间,称为桶.将n个记录分布到各个桶中去.如果有多于一个记录分到同一个桶中,需要进行桶内排序.最后依次把各个桶中的记录列出来记得到有序序列.效率分析:桶排序的平均时间复杂度为线性的O(N+C