題目:
在乙個 n * m 的二維陣列中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。
示例:
現有矩陣 matrix 如下:思路1:二分查詢[[1, 4, 7, 11, 15],
[2, 5, 8, 12, 19],
[3, 6, 9, 16, 22],
[10, 13, 14, 17, 24],
[18, 21, 23, 26, 30]
]給定 target = 5,返回 true。
給定 target = 20,返回 false。
**1:
bool
find
(int target, vectorint>
>array)
else
if(target[mid]
)else
return
true;}
}return
false
;}
思路2:根據陣列的屬性,我們可以知道最大值一定在右下角,最小值一定在左上角,因為它從左向右遞增,從上到下遞增。
**2:(帶主函式)
bool
find1
(int target, vectorint>
>array)
else
if(target[col]
)else
return
true;}
return
false;}
intmain()
for(
int i=
0;isize()
;i++)}
for(
int i=
0;isize()
;i++
) cout<} cout<<
find1(1
, a)
;}
拜拜!加油哦!(_
)。
面試題4 二維陣列中的查詢
題目 在乙個二維陣列中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。bool find int matrix,int cols,int rows,int target bool find int ...
面試題4 二維陣列中的查詢
題目 二維陣列中的查詢 在乙個二維陣列中,每一行都按照從左到右遞增的順序排序,每一列都按 照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個 整數,判斷陣列中是否含有該整數。include bool find int matrix,int rows,int columns,int...
面試題4 二維陣列中的查詢
題目 在乙個二維陣列中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下的遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。c 實現 includeusing namespace std bool find int numbers,int rows,...