C#如何不改变数组,将最小值放在数组的最后一个
时间: 2024-10-22 14:14:57 浏览: 30
在C#中,如果你想要找到数组中的最小值并将其移到数组的最后,而不改变原始数组,你可以创建一个新的数组来存储结果。以下是步骤:
1. 首先,创建一个新的数组,大小与原数组相同。
2. 初始化新数组的最后一个元素为原数组的第一个元素(即假设是最小值)。
3. 使用两层循环遍历原数组:
- 内层循环从第二个元素开始,比较当前元素和新数组的最后一个元素,如果当前元素更小,则更新新数组的最后一个元素。
- 外层循环遍历整个原数组。
4. 当内层循环结束后,新数组的最后一个元素将是原数组中的最小值。
这是一个简单的示例代码片段:
```csharp
int[] originalArray = {5, 3, 9, 1, 7}; // 假设这是原始数组
int length = originalArray.Length;
int[] newArray = new int[length]; // 新数组
// 将第一个元素视为最小值放到新数组的最后
newArray[length - 1] = originalArray[0];
for (int i = 0; i < length - 1; i++) {
for (int j = 0; j < length - 1 - i; j++) {
if (originalArray[j] < newArray[length - 1]) {
newArray[j] = originalArray[j];
newArray[j + 1] = originalArray[j + 1]; // 交换位置
}
}
}
// 新数组现在包含了原数组的最小值
```
阅读全文