二维数组中的查找

本文介绍了一种在特殊排序的二维数组中查找特定整数的方法。该数组的特点是每一行从左到右递增排序,每一列从上到下递增排序。通过选择数组右上角的元素开始比较,并根据大小关系逐步缩小搜索范围,最终确定目标整数是否存在。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题目描述:

在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。

基本思想:首先选取数组右上角的数字。如果该数字等于要查找的数字,查找过程结束;

         如果该数字大于要查找的数字,剔除这个数字所的列。

     如果该数字小于要查找的数字,剔除这个数字所在的行。

#include <iostream>
#include <algorithm>
#include "string.h"
#include "stdio.h"
#include <vector>
#include <deque>
#include <stack>
#include<map>
#include<utility>
#include "math.h"
using namespace std;
class Solution {
public:
    bool Find(int target, vector<vector<int> > array) {
        if(array.size() == 0)
            return false;
        int i=0;
        int j=array[0].size()-1;
        while(i<array.size()&&j>=0)
        {
               if(array[i][j]==target)
                return true;
            else if(array[i][j]<target)
               {
                i++;
            }
            else
            {
                j--;
            }
        }
        return false;
    }
};
int num;
int target;
int main() {
    cin >> num;
    cin >>target;
    vector<int> arr(num);
    vector<vector<int> > array(num);

    for(int i=0;i<num;i++)
    {
        for(int j=0;j<num;j++)
        {
            cin>>arr[j];
        }
        array[i]=arr;
    }
    for(int i=0;i<array.size();i++)
    {
        for(int j=0;j<array[0].size();j++)
        {
            cout<<array[i][j]<<" ";
        }
        cout<<endl;
    }
    Solution solution;
    bool result = solution.Find(target,array);
    cout<<"RESUL:"<<result<<endl;
    return 0;
}

 

转载于:https://www.cnblogs.com/omelet/p/6644534.html

内容概要:本文深入探讨了金属氢化物(MH)储氢系统在燃料电池汽车中的应用,通过建立吸收/释放氢气的动态模型和热交换模型,结合实验测试分析了不同反应条件下的性能表现。研究表明,低温环境有利于氢气吸收,高温则促进氢气释放;提高氢气流速和降低储氢材料体积分数能提升系统效率。论文还详细介绍了换热系统结构、动态性能数学模型、吸放氢特性仿真分析、热交换系统优化设计、系统控制策略优化以及工程验证与误差分析。此外,通过三维动态建模、换热结构对比分析、系统级性能优化等手段,进一步验证了金属氢化物储氢系统的关键性能特征,并提出了具体的优化设计方案。 适用人群:从事氢能技术研发的科研人员、工程师及相关领域的研究生。 使用场景及目标:①为储氢罐热管理设计提供理论依据;②推动车载储氢技术的发展;③为金属氢化物储氢系统的工程应用提供量化依据;④优化储氢系统的操作参数和结构设计。 其他说明:该研究不仅通过建模仿真全面验证了论文实验结论,还提出了具体的操作参数优化建议,如吸氢阶段维持25-30°C,氢气流速0.012g/s;放氢阶段快速升温至70-75°C,水速18-20g/min。同时,文章还强调了安全考虑,如最高工作压力限制在5bar以下,温度传感器冗余设计等。未来的研究方向包括多尺度建模、新型换热结构和智能控制等方面。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值