LintCode問題圖解-25

本文準備講解1個算法編程問題, 這個算法編程問題來自LintCode平臺。不了解.LintCode平臺的讀者可以閱讀筆者文章(在線編程平臺推薦-LeetCode)。問題的英文版本描述如下:

Search a 2D Matrix II

Write an efficient algorithm that searches an m x n matrix, return the occurrence count of targets.

This matrix has the following properties:

Integers in each row are sorted from left to right.

Integers in each column are sorted from up to bottom.

Example

Consider the following matrix:

[

[1, 3, 5, 7],

[2, 4, 7, 8],

[3, 5, 9, 10]

]

Given target =3, return 2.

搜索二維矩陣?II

搜索m×n矩陣。

這個矩陣具有以下特性:

Integers in each row are sorted from left to right.

Integers in each column are sorted from up to bottom.

樣例

考慮下列矩陣:

[

[1, 3, 5, 7],

[2, 4, 7, 8],

[3, 5, 9, 10]

]

給出 target =3,返回?2.

面對2維矩陣,首先需要找到目標元素所在的矩陣行。每個矩陣行都為升序數列,矩陣的首列也為升序數列。找到目標元素所在的矩陣行需要搜索矩陣首列。然后需要找到目標元素所在的位置。找到目標元素所在的矩陣位置需要搜索目標元素所在的矩陣行。JAVA 語言提供的數組搜索函數只能找到目標數組元素。面對本問題,找到目標元素所在的矩陣行不能選用 JAVA 語言提供的數組搜索函數;找到目標元素所在的矩陣位置可以選用 JAVA 語言提供的數組搜索函數。該算法不能處理行內字符重復出現。 ( 參見另1個問題的文章:LintCode問題圖解-20。?)

搜索二維矩陣?II 問題和搜索二維矩陣問題都不能對應通用的搜索二維矩陣問題,通用的搜索二維矩陣問題需要選用更多的測試用例。


簡單的算法
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 背景 一年多以前我在知乎上答了有關LeetCode的問題, 分享了一些自己做題目的經驗。 張土汪:刷leetcod...
    土汪閱讀 12,775評論 0 33
  • 本文準備講解1個算法編程問題, 這個算法編程問題來自LintCode平臺。不了解.LintCode平臺的讀者可以閱...
    billliu_0d62閱讀 303評論 0 1
  • LeetCode 刷題隨手記 - 第一部分 前 256 題(非會員),僅算法題,的吐槽 https://leetc...
    蕾娜漢默閱讀 17,934評論 2 36
  • NumPy是Python中關于科學計算的一個類庫,在這里簡單介紹一下。 來源:https://docs.scipy...
    灰太狼_black閱讀 1,252評論 0 5
  • 先決條件 在閱讀這個教程之前,你多少需要知道點python。如果你想從新回憶下,請看看Python Tutoria...
    舒map閱讀 2,602評論 1 13