begin:
1、氣泡排序思想(公升序排序):
如 a=[9,6,8,7,5,3]
i=0第一趟排序:3與5比較,3和5交換位置,a=[9,6,8,7,3,5]; j=len-1
3與7比較,3和7交換位置,a=[9,6,8,3,7,5]; j=len-2
3與8比較,3和8交換位置,a=[9,6,3,8,7,5]; j=len-3
3與6比較,3和6交換位置,a=[9,3,6,8,7,5]; j=len-4
3與9比較,3和9交換位置,a=[3,9,6,8,7,5]; j=len-5=i
第一趟排序結束,此時3在正確的位置上,a=[3,9,6,8,7,5]
i=1第二趟排序:5與7比較,5和7交換位置,a=[3,9,6,8,5,7]; j=len-1
5與8比較,5和8交換位置,a=[3,9,6,5,8,7]; j=len-2
5與6比較,5和6交換位置,a=[3,9,5,6,8,7]; j=len-3
5與9比較,5和9交換位置,a=[3,5,9,6,8,7]; j=len-4=i
第二趟排序結束,此時3和5在正確的位置上,a=[3,5,9,6,8,7]
i=2第三趟排序:7與8比較,7和8交換位置,a=[3,5,9,6,7,8]; j=len-1
7與6比較,不用交換位置,a=[3,5,9,6,7,8]; j=len-2
6與9比較,6和9交換位置,a=[3,5,6,9,7,8]; j=len-3=i
第三趟排序結束,此時3、5、6在正確的位置上,a=[3,5,6,9,7,8]
i=3第四趟排序:8與7比較,不用交換位置,a=[3,5,6,9,7,8]; j=len-1
7與9比較,7和9交換位置,a=[3,5,6,7,9,8]; j=len-2=i
第四趟排序結束,此時3、5、6、7在正確的位置上,a=[3,5,6,7,9,8]
i=4第五趟排序:8與9比較,8和9交換位置,a=[3,5,6,7,8,9]; j=len-1=i
第五趟排序結束,此時所有數字都在正確的位置上,a=[3,5,6,7,9,8]
氣泡排序結束。
**:c語言:
數字氣泡排序
#include
#字串氣泡排序
void
bubble
(int s,
int len)}if
(f)}
}int
main()
; len =
sizeof
(a)/
sizeof
(a[0])
;bubble
(a,len)
;for
(int i=
0;i)printf
("\n");
return0;
}
字串氣泡排序
#include
#include
#字串氣泡排序
void
bubble
(int s,
int len)}if
(f)}
}int
main()
python:
數字氣泡排序:
def
bubble
(a):
n =len(a)
for i in
range
(n-1):
f=true
for j in
range
(n-1
,i,-1)
:if a[j]
: t = a[j]
a[j]
=a[j-1]
a[j-1]
=t f=
false
if f:
break
return a
defsolution()
: a=[9
,6,8
,7,5
,3] a=bubble(a)
for k in a:
print
(k,end=
(' '))
print
()
end. 排序演算法二(冒泡)(C Python)
時間複雜度o n2 空間複雜度o 1 該排序演算法穩定!int swap int a,int i,int j void bubblesort int a,int n class bslist def init self,lis none self.lis lis def bubble sort se...
選擇排序 C python實現
對一組資料進行選擇排序的方法是,在一組資料中找到最小的,排到第一位,然後從剩下的資料中找到第二個小的,排到第二位,逐次排序完成。比如 3 7 9 10,0這一組資料 第一次排序 3,7,9,0,10,將最小的0排到第一位,3和0的位置交換,為0,7,9,3,10,然後未排序的資料為7,9,3,10,...
排序 快排C Python
1 i left j right 找乙個基準數 隨意,這裡不妨找a left a i 將其挖出。2 j 由後向前找比它小的數,找到後挖出此數填前乙個坑a i 中。3 i 由前向後找比它大的數,找到後也挖出此數填到前乙個坑a j 中。4 重複2,3步,直到i j,將基準數填入a i 中。include...