输入n和n个整数,使用选择法排序,输出从大到小的序列。元素个数不超过100.
时间: 2024-05-03 17:21:43 浏览: 37
```python
n = int(input())
lst = list(map(int, input().split()))
for i in range(n-1):
max_index = i
for j in range(i+1, n):
if lst[j] > lst[max_index]:
max_index = j
lst[i], lst[max_index] = lst[max_index], lst[i]
print(*lst)
```
相关问题
使用c语言,输入n和n个整数,使用选择法排序,输出从大到小的序列。元素个数不超过100.
以下是使用C语言编写的代码:
```c
#include <stdio.h>
void swap(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
void selectionSort(int arr[], int n) {
int i, j, max_idx;
for (i = 0; i < n-1; i++) {
max_idx = i;
for (j = i+1; j < n; j++) {
if (arr[j] > arr[max_idx]) {
max_idx = j;
}
}
swap(&arr[max_idx], &arr[i]);
}
}
int main() {
int n, i;
int arr[100];
printf("请输入元素个数n(n不超过100):");
scanf("%d", &n);
printf("请输入%d个整数:", n);
for (i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
selectionSort(arr, n);
printf("从大到小的序列为:");
for (i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
return 0;
}
```
使用选择法排序,时间复杂度为O(n^2),在元素个数较少的情况下可以使用。首先输入元素个数n和n个整数,然后调用selectionSort函数进行排序,最后输出排序后的结果。
c语言输入n和n个整数,使用选择法排序,输出从大到小的序列
```c
#include <stdio.h>
#define N 100
int main()
{
int n, i, j, temp, a[N];
//输入数组个数和元素
printf("请输入数组个数 n:");
scanf("%d", &n);
printf("请输入 %d 个整数:", n);
for(i=0; i<n; i++)
{
scanf("%d", &a[i]);
}
//选择排序
for(i=0; i<n-1; i++)
{
for(j=i+1; j<n; j++)
{
if(a[j]>a[i])
{
temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
}
//输出排序后的数组
printf("从大到小的序列为:");
for(i=0; i<n; i++)
{
printf("%d ", a[i]);
}
return 0;
}
```
注:选择排序是一种简单的排序算法,时间复杂度为O(n^2),不适用于大规模数据排序,可以考虑其他高效的排序算法。