标签:
void BubbleSort(int array[], int len) { int i; while (len > 0) { for(i = 1; i < len; i++) //从array[1]开始比较,循环len-1-i次 { if (array[i-1] > array[i]) //如果前一个大于后一个,则交换 swap(&array[i - 1], &array[i]); } len--; } }
#FileName:BubbleSort.py #Python Version:2.7.11 def BubbleSort(array,lenth): while lenth > 0: for i in range(1,lenth,1): if array[i-1] > array[i]: array[i],array[i-1] = array[i-1],array[i] #swap #print array lenth = lenth - 1 return array
>>> sortTest = [9,8,7,6,5,4,3,2,1] >>> BubbleSort(sortTest,9) [1, 2, 3, 4, 5, 6, 7, 8, 9] >>>
//BubbleSort.cpp : 定义控制台应用程序的入口点。 //IDE Version : VS2013 #include "stdafx.h" void swap(int *a, int *b); void BubbleSort(int array[], int len); int _tmain(int argc, _TCHAR* argv[]) { int sortTest[9] = { 9, 8, 7, 6, 5, 4, 3, 2, 1 }; BubbleSort(sortTest, 9); for (int i = 0; i < 9; i++) { printf("%d ", sortTest[i]); //输出1 2 3 4 5 6 7 8 9 } printf("\n "); return 0; } //数据交换函数 void swap(int *a, int *b) { int temp; temp = *a; *a = *b; *b = temp; } //冒泡排序函数 void BubbleSort(int array[], int len) { int i; do { for (i = 1; i < len; i++) //从array[1]开始比较,循环len-1-i次 { if (array[i-1] > array[i]) //如果前一个大于后一个,则交换 swap(&array[i - 1], &array[i]); } }while(len--); //把while改成do...while }
标签:
原文地址:http://blog.csdn.net/yannanxiu/article/details/51345754