数组中求最大值和最小值
时间: 2024-06-18 20:03:02 浏览: 21
在数组中求最大值和最小值,可以通过遍历数组来实现。首先假设数组的第一个元素是最大值和最小值,然后依次与后面的元素进行比较,如果比当前最大值大,则更新最大值,如果比当前最小值小,则更新最小值。遍历完成后,就可以得到数组中的最大值和最小值了。
以下是一个示例代码:
```c++
#include <iostream>
using namespace std;
int main() {
int arr[] = {5, 3, 8, 2, 7, 1, 9, 4, 6};
int len = sizeof(arr) / sizeof(arr);
int max_val = arr, min_val = arr;
for (int i = 1; i < len; i++) {
if (arr[i] > max_val) {
max_val = arr[i];
}
if (arr[i] < min_val) {
min_val = arr[i];
}
}
cout << "Max value: " << max_val << endl;
cout << "Min value: " << min_val << endl;
return 0;
}
```
相关问题
判断数组中的最大值和最小值
判断数组中的最大值和最小值可以通过遍历数组来实现。具体步骤如下:
1. 假设数组中的第一个元素为最大值和最小值。
2. 遍历数组,依次比较每个元素与当前最大值和最小值的大小关系,更新最大值和最小值。
3. 遍历完成后,最大值和最小值即为数组中的最大值和最小值。
代码示例(Python):
```
def find_max_min(arr):
max_val = arr[0]
min_val = arr[0]
for i in range(1, len(arr)):
if arr[i] > max_val:
max_val = arr[i]
if arr[i] < min_val:
min_val = arr[i]
return max_val, min_val
```
树状数组求区间最大值和最小值
树状数组是一种用于高效维护前缀和的数据结构,可以用来求解区间最大值和最小值。下面是两种使用树状数组求解区间最大值和最小值的算法:
1. 使用树状数组维护区间最大值的算法:
```cpp
void updata(int i, int val) {
while (i <= n) {
h[i] = max(h[i], val);
i += lowbit(i);
}
}
```
2. 使用树状数组维护区间最小值的算法:
```cpp
void updata(int x) {
int lx, i;
while (x <= n) {
h[x] = a[x];
lx = lowbit(x);
for (i=1; i<lx; i<<=1)
h[x] = min(h[x], h[x-i]);
x += lowbit(x);
}
}
```
这两种算法都是通过不断更新树状数组中的元素来维护区间的最大值或最小值。其中,lowbit(x)函数用于计算x的最低位1所代表的值。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)