码迷,mamicode.com
首页 > 编程语言 > 详细

二维数组查找——剑指offer

时间:2017-08-17 17:48:34      阅读:115      评论:0      收藏:0      [点我收藏+]

标签:--   code   isp   技术分享   ++   display   pen   closed   while   

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

技术分享
 1 #include <stdio.h>
 2 #include<stdbool.h>
 3 int main()
 4 {
 5     int find(int  matrix[4][4], int rows, int columns, int number);
 6     int a[4][4] = {{ 1, 2, 8, 9 }, 
 7                    { 2, 4, 9, 12 }, 
 8                    { 4, 7, 10, 13 }, 
 9                    { 6, 8, 11, 15 } };
10     int result = find(a, 4, 4, 12);
11     if (result == 1)
12         printf("已经查到\n");
13     else
14         printf("数组中没有此元素\n");
15     return 0;
16 }
17 int find(int  matrix[4][4], int rows, int columns, int number)
18 {
19     bool found = false;
20     if (matrix != NULL && rows>0 && columns>0)
21     {
22         int a = 0;
23         int b = columns - 1;
24         while (a<rows && b >= 0)
25         {
26             if (matrix[a][b] == number)
27             {
28                 found = true;
29                 break;
30             }
31             else if (matrix[a][b]> number)
32                 --b;
33             else
34                 ++a;
35         }
36     }
37     return found;
38 }
View Code

 

二维数组查找——剑指offer

标签:--   code   isp   技术分享   ++   display   pen   closed   while   

原文地址:http://www.cnblogs.com/xyzyj/p/7383047.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!