《劍指offer 題目1》

2022-04-08 09:52:45 字數 680 閱讀 4360

在乙個二維陣列中(每個一維陣列的長度相同),每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。

開始想到的是從左上角開始搜尋,這樣搜尋可能重複,可以標記去重。

但是從左下角開始向右上角搜尋比較高效。

測試資料集

//[[1,2,8,9],[2,4,9,12],[4,7,10,13],[6,8,11,15]]

std::vector> array = ,,,

};solution s;

cout<**:

#include #include using namespace std;

class solution

bool search1(int target, vector> array, int x, int y)

else if(target > array[x][y])

}return false;

}//從左下角往上往右的方向尋找,最簡單

bool search2(int target, vector> array, int x, int y)

else if(target < array[x][y])

else

}return false;

}};

劍指offer題目

在乙個二維陣列中 每個一維陣列的長度相同 每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。把乙個陣列最開始的若干個元素搬到陣列的末尾,我們稱之為陣列的旋轉。輸入乙個非減排序的陣列的乙個旋轉,輸出旋轉陣...

劍指OFFER 題目review

劍指offer ac 三道題,現在review下 題目一 從尾到頭列印鍊錶 輸入乙個鍊錶,按煉錶值從尾到頭的順序返回乙個arraylist。我的思路 1.鍊錶值從頭到尾順序放入vector中 2.逆序vector 實現 class solution int size data.size for in...

劍指offer的題目

題目描述 乙隻青蛙一次可以跳上1級台階,也可以跳上2級 它也可以跳上n級。求該青蛙跳上乙個n級的台階總共有多少種跳法。分析 跳乙個n階台階的方法數 class solution 題目描述 我們可以用2 1的小矩形橫著或者豎著去覆蓋更大的矩形。請問用n個2 1的小矩形無重疊地覆蓋乙個2 n的大矩形,總...