使用冒泡{101,102,107,104,105,108,103};倒序 从大到小输出数组
时间: 2023-09-20 22:07:14 浏览: 75
可以使用冒泡排序算法来实现倒序输出数组。以下是使用冒泡排序算法倒序输出给定数组的示例代码:
```python
def bubble_sort_reverse(arr):
n = len(arr)
for i in range(n-1):
for j in range(n-i-1):
if arr[j] < arr[j+1]:
arr[j], arr[j+1] = arr[j+1], arr[j]
return arr
arr = [101, 102, 107, 104, 105, 108, 103]
sorted_arr = bubble_sort_reverse(arr)
print(sorted_arr)
```
运行以上代码,输出结果为:[108, 107, 105, 104, 103, 102, 101],即从大到小倒序排列的数组。
相关问题
python倒序输出冒泡排序
在Python中,我们可以使用列表推导式或者简单的for循环来实现冒泡排序,并且通过交换元素的位置达到倒序的效果。这里是一个简单的示例:
```python
def bubble_sort_reverse(arr):
n = len(arr)
# 冒泡排序,从大到小
for i in range(n - 1):
for j in range(0, n - i - 1): # 由于每次外层循环结束后,最大的数已经到了正确位置,所以内层循环的范围递减
if arr[j] < arr[j + 1]: # 当前元素小于下一个元素,则交换
arr[j], arr[j + 1] = arr[j + 1], arr[j]
return arr
# 示例
arr = [64, 34, 25, 12, 22, 11, 90]
sorted_arr = bubble_sort_reverse(arr)
print("原数组:", arr)
print("倒序排序后的数组:", sorted_arr)
输入三个整数从大到小排列输出结果简单算法
要使用C语言编写一个简单的算法,将输入的三个整数按从大到小的顺序进行排序并输出,你可以使用冒泡排序的方法。这里是一个示例代码:
```c
#include <stdio.h>
void bubble_sort(int arr[], int n) {
for (int i = 0; i < n - 1; i++) { // 重复遍历直到数组倒序
for (int j = 0; j < n - i - 1; j++) { // 内层循环用于比较和交换相邻元素
if (arr[j] < arr[j + 1]) { // 如果前一个元素小于后一个
int temp = arr[j]; // 临时存储较小元素
arr[j] = arr[j + 1];
arr[j + 1] = temp; // 将较大元素移到前面
}
}
}
}
int main() {
int num1, num2, num3;
printf("Enter three integers: ");
scanf("%d %d %d", &num1, &num2, &num3);
// 先保存原顺序的值,因为 Bubble Sort 是就地排序
int temp = num1;
if (temp < num2) {
temp = num2;
if (temp < num3) {
temp = num3;
}
}
bubble_sort(&num1, 3); // 只对前三个元素排序
printf("Numbers in descending order: %d, %d, %d\n", num1, num2, num3);
return 0;
}
```
这个程序首先获取用户的三个输入,然后用冒泡排序算法对这三个数值进行降序排序。注意这里是直接对`num1`进行操作,因为`bubble_sort`函数接受的是指针,所以我们传入的是`&num1`。
运行这段代码后,它会提示你输入三个整数,然后按照从大到小的顺序输出结果。
阅读全文