本文主要是介绍数据结构中的排序--冒泡(bubble)排序,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
冒泡排序的思路:以升序为例,将数列中的第一个数拿出来,依次后后面的比较,如果比后面的数大,那么久交换,直到比较到最后一个,当这一趟比较结束后,第一个数就是最小的。然后再取第二个数,同样的依次和后面的数比较,比较结束后,这个数据就是第二小的,后面的就是依次类推。
C语言中两个for循环即可实现。
#include "stdafx.h"
#include <iostream>
using namespace std;void print(int data[], int n)
{for (int i = 0; i < n; i++){cout << data[i] << " ";}cout << endl;
}void bubble_ascending_sort(int data[], int n)
{int i = 0, j = 0, temp = 0, d = 0;for (i = 0; i < n; i++){for (j = (i + 1); j < n; j++){if (data[i] > data[j]){temp = data[i];data[i] = data[j];data[j] = temp;}}}
}void bubble_desending_sort(int data[], int n)
{int i = 0, j = 0, temp = 0, d = 0;for (i = 0; i < n; i++){
这篇关于数据结构中的排序--冒泡(bubble)排序的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!