在 C++ 中不使用关系运算符查找数组中的最小值
在此问题中,我们给定一个由 n 个正元素组成的数组 arr[]。我们的任务是在不使用关系运算符的情况下在数组中找到最小值。
编程中的关系运算符是用于检查两个值之间的关系的运算符。比如 ==(等于)、大于(>)、小于(<)等。
让我们举一个例子来理解这个问题,
输入
arr[] = {4, 2, 5, 1, 7}输出
1
说明
The smallest element is 1.
解决方案方法
解决此问题的简单方法是使用循环,并检查数组所有元素中最小元素。为了查找两个给定元素之间的最小元素,我们可以比较当我们两个都减去 1 时哪个元素首先变成 0。
程序说明我们解决方案的工作原理,
示例
#include <iostream>
using namespace std;
int findMin(int a, int b) {
int minVal = 0;
while (a && b) {
minVal++;
a--;
b--;
}
return minVal;
}
int findMinimumElement(int arr[], int n) {
int minVal = arr[0];
int i = (n - 1) ;
while(i){
minVal = findMin(minVal, arr[i]);
i--;
}
return minVal;
}
int main() {
int arr[] = {4, 2, 5, 1, 7};
int n = sizeof(arr) / sizeof(arr[0]);
cout<<"The minimum element is "<<findMinimumElement(arr, n);
return 0;
}输出
The minimum element is 1
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP