//冒泡排序法 #includeint main() { int n; scanf("%d",&n); int i, j, m, a[n]; for(i = 0; i < n; i++) scanf("%d",&a[i]); for(i=0; i a[j+1]) { m = a[j]; a[j] = a[j+1]; a[j+1] = m; } } } for(i = 0; i < n; i++) printf("%d ",a[i]); }
//选择排序法 #includeint main() { int n; scanf("%d",&n); int i, j, m, a[n]; for(i = 0; i < n; i++) scanf("%d",&a[i]); for(i = 0; i < n; i++) { for(j = i+1; j < n; j++) { if(a[j] < a[i]) { m = a[j]; a[j] = a[i]; a[i] = m; } } } for(i = 0; i < n; i++) printf("%d ",a[i]); }
冒泡排序法是用一个当前的数和下一个数作比较,循环往前推进。
如:4 5 1 3 -> 4 1 5 3 -> 4 1 3 5 -> 1 4 3 5 -> 1 3 4 5
选择排序法是用一个当前的数和后边所有的数作比较,然后循环。
如:4 5 1 3 -> 1 5 4 3 -> 1 4 5 3 -> 1 3 5 4 -> 1 3 4 5
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)