冒泡排序
来源:互联网 发布:dota视频软件 编辑:程序博客网 时间:2024/06/05 21:05
Java:
public int[] bubbleSort(int[] arr) {
int temp;
for (int i = arr.length - 1; i > 0; i--) {
for (int j = 0; j < i; j++) {
if (arr[j + 1] > arr[j]) {
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
return arr;
}
JavaScript:
function
bubbleSort(arr){
var
temp;
//先定义缓存
for
(
var
i=0;i<arr.length-1;i++){
//前面的泡
for
(
var
J=i+1;J<arr.length;J++){
//后面的泡
if
(arr[i]>arr[J]){
//若前泡>后泡
temp=arr[i];
arr[i]=arr[J];
arr[J]=temp;
//交换
}
}
}
return
arr;
}
PHP:
$a
=
array
(
'3'
,
'8'
,
'1'
,
'4'
,
'11'
,
'7'
);
print_r(
$a
);
$len
=
count
(
$a
);
//从小到大
for
(
$i
=1;
$i
<
$len
;
$i
++)
{
for
(
$j
=
$len
-1;
$j
>=
$i
;
$j
--)
if
(
$a
[
$j
]<
$a
[
$j
-1])
{
//如果是从大到小的话,只要在这里的判断改成if($b[$j]>$b[$j-1])就可以了
$x
=
$a
[
$j
];
$a
[
$j
]=
$a
[
$j
-1];
$a
[
$j
-1]=
$x
;
}
}
Object-C:
- (
void
)bubbleSort:(NSMutableArray *)array
{
int
i, y;
BOOL
bFinish = YES;
for
(i = 1; i<= [array count] && bFinish; i++) {
bFinish = NO;
for
(y = (
int
)[array count]-1; y>=i; y--) {
if
([[array objectAtIndex:y] intValue] < [[array objectAtIndex:y-1] intValue]) {
[array exchangeObjectAtIndex:y-1 withObjectAtIndex:y];
bFinish = YES;
}
}
}
}
perl:
#! /usr/bin/perl -w
use
strict;
my
@list
=
qw /
3 5 6 2 12/;
bubble_sort(\
@list
,
scalar
@list
);
print
"@list\n"
;
sub
bubble_sort {
my
$arrays_ref
=
shift
;
my
$num
=
shift
;
for
(
my
$i
= 0;
$i
<
$num
- 1;
$i
++) {
for
(
my
$j
= 0;
$j
<
$num
-
$i
- 1;
$j
++) {
if
(
$arrays_ref
->[
$j
] >
$arrays_ref
->[
$j
-1]) {
my
$tmp
=
$arrays_ref
->[
$j
];
$arrays_ref
->[
$j
] =
$arrays_ref
->[
$j
-1];
$arrays_ref
->[
$j
-1] =
$tmp
;
}
}
}
return
$arrays_ref
;
}
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- SIP, SDP
- linux内核List中关于hash链表
- POJ-1008-Maya Calendar
- WPF整理
- 获取URL中的中文参数
- 冒泡排序
- POJ-1028-Web Navigation
- linux内核list.h中对链表的操作
- POJ-1051-P,MTHBGWB
- DispatcherServlet作用
- Linux中的container_of的说明
- POJ-1666-Candy Sharing Game
- MAVEN常用命令
- linux内核中typeof的使用说明