zoukankan      html  css  js  c++  java
  • 【剑指Offer】01二维数组中的查找

    题目描述

    在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
    时间限制:1秒;空间限制:32768K;本题知识点: 查找

    解题思路

    先定位到二维数组左下角的数据,从这个数据开始比较大小,因为这个位置的数据有个特点:比它小的数据都在上方,比它大的数据都在右方。如果当前值比目标值小,右移一列;如果当前值比目标值大,上移一行;循环直到找到相同值或遍历整个数组。

    Python代码:

    # -*- coding:utf-8 -*-
    class Solution:
        # array 二维列表
        def Find(self, target, array):
            # write code here
            row = len(array)-1 #行数
            col = len(array[0])-1  #列数
            i = row
            j = 0
            while i>=0 and j<=col:
                if target > array[i][j]:
                    j += 1
                elif target < array[i][j]:
                    i -= 1
                else:
                    return True
            return False
  • 相关阅读:
    jQuery 选择器
    DOM 文档对象模型+倒计时
    javascript简单写出国际象棋棋盘
    javascript循环语句及函数
    JAVASCRIPT基础
    用纯CSS做的图片切换
    项目练习总结
    用CSS做的简单弹窗
    CSS布局元素
    jQuery属性/CSS使用例子
  • 原文地址:https://www.cnblogs.com/yucen/p/9912060.html
Copyright © 2011-2022 走看看