问题解答:
可以使用以下步骤来找到一个数组中的最大值:
创建一个整数变量max,用来存储当前最大的值,初始化为数组的第一个元素。
使用for循环遍历数组,从第二个元素开始比较。如果当前元素大于max,将当前元素赋值给max。
循环结束后,max中存储的就是数组中的最大值。
下面是一个示例代码,使用这个思路找到数组中的最大值:
#include <stdio.h>
int findMax(int arr[], int size) {
int max = arr[0]; // 初始化max为数组的第一个元素
for (int i = 1; i < size; i++) {
if (arr[i] > max) {
max = arr[i]; // 更新max为更大的值
}
}
return max; // 返回最大值
}
int main() {
int arr[] = {5, 2, 9, 1, 7}; // 示例整数数组
int size = sizeof(arr) / sizeof(arr[0]); // 数组的大小
int max = findMax(arr, size); // 调用findMax函数找到最大值
printf("数组中的最大值为:%d\n", max); // 输出最大值
return 0;
}
执行上述代码,输出结果为:
数组中的最大值为:9
这样就找到了数组中的最大值。
这题有三种方法:
1、枚举出所有可能性,然后做从大到小的排序
2、把所有可能性自己笔头算出来,打表
3、找到贪心的策略,进行贪心算法