内容简介:冒泡排序 (oc/java/python/scala)
冒泡 排序 就是把小的元素往前调或者把大的元素往后调。比较是相邻的两个元素比较,交换也发生在这两个元素之间。时间复杂度为 O(n^2)。
点击查看冒泡排序原理动画演示
java代码:
import java.util.Arrays; public class MyClass { public static void main(String[] args){ int[] array = {9,35,4,78,31,2,777,56,83,15}; int[] arr1=sort(array); System.out.println(Arrays.toString(arr1)); } public static int[] sort(int[] array){ int[] arr = array; for(int i = 0;i<arr.length;i++){ for(int j = 0;j<arr.length-i-1;j++){ if(arr[j]>arr[j+1]){ int temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } } return arr; } }
oc代码:
#import "ViewController.h" @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; NSMutableArray *array = [NSMutableArray arrayWithObjects:@9,@35,@4,@78,@31,@2,@777,@56,@83,@15, nil]; [self sort:array]; } -(void)sort:(NSMutableArray*)arr{ for(int i = 0;i<[arr count];i++){ for(int j = 0;j<[arr count]-i-1;j++){ if(arr[j]>arr[j+1]){ [arr exchangeObjectAtIndex:j withObjectAtIndex:j+1]; } } } for(int i = 0;i<[arr count];i++){ NSLog(@"%d",[arr[i] intValue]); } } @end
python代码:
def paixu(array): #控制外层循环 for i in range(0,len(array)): #内层循环 for j in range(0,len(array)-i-1): #把大数放到后面 if array[j]>array[j+1]: array[j],array[j+1] = array[j+1],array[j] print(array) if __name__ == "__main__": array = [9,35,4,78,31,2,777,56,83,15] paixu(array)
scala代码:
object HelloWorld { def main(args:Array[String]){ var array = Array(9,35,4,78,31,2,777,56,83,15) sort(array) } def sort(array:Array[Int]):Unit={ for(i <- 0 to array.length-1){ for(j <- 0 to array.length-i-2){ if(array(j)>array(j+1)){ var temp:Int = array(j) array(j) = array(j+1) array(j+1) = temp } } } for ( x <- array ) { println( x ) } } }
结果:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 排序算法--冒泡排序
- 冒泡排序——重温排序(三)
- 【一起学习排序算法】1.冒泡排序
- 排序算法之冒泡排序改进算法
- 算法之常见排序算法-冒泡排序、归并排序、快速排序
- 图形化排序算法比较:快速排序、插入排序、选择排序、冒泡排序
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Introduction to the Design and Analysis of Algorithms
Anany Levitin / Addison Wesley / 2011-10-10 / USD 117.00
Based on a new classification of algorithm design techniques and a clear delineation of analysis methods, Introduction to the Design and Analysis of Algorithms presents the subject in a coherent a......一起来看看 《Introduction to the Design and Analysis of Algorithms》 这本书的介绍吧!
CSS 压缩/解压工具
在线压缩/解压 CSS 代码
RGB转16进制工具
RGB HEX 互转工具