用函数,输入组数,最小的元素和最大的元素交换,输出数组
时间: 2023-11-02 08:27:02 浏览: 64
python 输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组(示例)
5星 · 资源好评率100%
好的,我明白你的问题了。下面是一个 Python 函数,可以实现你所要求的功能:
```python
def swap_min_max(arr):
if not arr: # 处理空数组的情况
return []
min_idx, max_idx = 0, 0
for i in range(len(arr)):
if arr[i] < arr[min_idx]:
min_idx = i
if arr[i] > arr[max_idx]:
max_idx = i
arr[min_idx], arr[max_idx] = arr[max_idx], arr[min_idx]
return arr
```
这个函数的参数 `arr` 是一个包含整数元素的列表,它会返回一个新的列表,其中最小值和最大值已经被交换了。如果输入的列表为空,则返回一个空列表。
你可以这样调用这个函数:
```python
arr = [3, 5, 2, 8, 1, 9, 4, 7, 6]
new_arr = swap_min_max(arr)
print(new_arr) # 输出 [3, 5, 2, 6, 1, 9, 4, 7, 8]
```
在上面的例子中,输入的列表是 `[3, 5, 2, 8, 1, 9, 4, 7, 6]`,最小值是 1,最大值是 9,经过交换后得到的新列表是 `[3, 5, 2, 6, 1, 9, 4, 7, 8]`。
阅读全文