这几天为了找工作开始看《剑指offer》,到现在也大概浏览一遍了,前两天看作者博客中提到九度OJ,就去看了一下,发现上面有书上的题目,就想可以自己写代码练习一下,而不仅仅是看解题思路,毕竟还是觉得写代码实在。可是现在却不想一道一道做了,知道怎么解决并且看过代码后忽然就没动力再去写了...唉...

  不过最后还是决定写点,写一点是一点吧,记录一下自己的代码。也许我一看要写50道题就有点害怕了,毕竟最近因为找工作的事情有点闹心,没法静下心来做事情,uva也暂时停止了,反正现在搞的挺乱的...

  好了,没用的话说也说了,说一下感受吧,浏览完这本书后留下印象最深的就是对空指针的判断,每一个涉及指针的操作都要先判断是否为NULL,以前我是从未考虑的,因为在oj上做题是不用考虑这个的,所以我几乎没这个习惯,看来以后要该改啦。收获一方面是解题思路,另一方面就是代码的鲁棒性了,给我上了很好的一堂课。的确,自己还有很多不足,还要好好努力...                                                                                                                

@2013-09-26


  题3:二维数组中的查找。

 1 #include <cstdio>
 2 #define MAXN 1000+10
 3 
 4 int a[MAXN][MAXN];
 5 
 6 int main()
 7 {
 8 #ifdef LOCAL
 9     freopen("in", "r", stdin);
10 #endif
11     int m, n;
12     while (scanf("%d%d", &m, &n) != EOF)
13     {
14         int target;
15         scanf("%d", &target);
16         for (int i = 0; i < m; i++)
17             for (int j = 0; j < n; j++)
18                 scanf("%d", &a[i][j]);
19         int x = 0, y = n-1;
20         bool ok = false;
21         while (x < m && y >= 0)
22         {
23             if (a[x][y] == target)
24             {
25                 ok = true;
26                 break;
27             }
28             else if (a[x][y] > target)  y--;
29             else x++;
30         }
31         if (ok)  printf("Yes\n");
32         else  printf("No\n");
33     }
34     return 0;
35 }
Problem 3

相关文章:

  • 2022-12-23
  • 2021-11-24
  • 2022-12-23
  • 2021-12-24
  • 2021-06-26
  • 2021-05-08
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-12-11
  • 2021-04-24
  • 2021-08-31
相关资源
相似解决方案