信箱中那兩個不算太難的題 解答

2021-08-26 13:19:45 字數 556 閱讀 8230

第一題:

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

例如下面的二維陣列就是每行、每列都遞增排序。如果在這個陣列中查詢數字7,則返回true;如果查詢數字5,由於陣列不含有該數字,則返回false。

這個是楊氏矩陣(young),使用類似與堆排序的過程。

第二題:

(1)f(n)=f(n-1)+f(n-2), 斐波那契數列,具體實現,可以用矩陣,這樣可以是用動態規劃

fn              = 1 1 *  fn-1

fn-1              1 0     fn-2

f1=1;

f2=2;

迭代計算方式,

動態規劃,memoize, logn次矩陣乘法

如果不考慮大數計算的話,很容易實現。如果需要考慮大數,還需要再思考下。。。。不記得fft管用麼(2個大數相乘)。

(2)(1+x)^n ;展開式 因此恰好為2^n (=igma(c(n,k)),2^n次, 

牛客題霸 用兩個棧實現佇列 C 題解 答案

用兩個棧來實現乙個佇列,完成佇列的push和pop操作。佇列中的元素為int型別。我們都知道棧的性質是先進後出,佇列是先進先出 我們用兩個棧來模擬出佇列 可以先用乙個棧來存數,當要輸出時,最上面的是最晚進棧的,我們將所有數存到另乙個棧內,這樣就使得第二個棧的頂部是最早輸入的數,就可以實現先進先出 c...

陳躍峰的《兩個基礎的演算法題目》的解答

1 編寫方法,生成符合如下要求的乙個一維陣列。要求如下 1 該陣列的長度是20 2分 2 其中包含2組1 10之間的所有整數 5分 3 每個元素的位置不固定,也就是隨機數組 8分 4 該方法的返回值為該一維陣列 2分 5 規範 3分 2 編寫方法,返回乙個整數中出現次數最多的數字,如果出現的次數相同...

生活中的兩個小問題

看似簡單的問題,如果不小心,很容易掉進陷進裡哦o o 看題吧 第一題 有3個人去投宿,一晚30元.三個人每人掏了10元湊夠30元交給了老闆.後來老闆說今天優惠只要25元就夠了,拿出5元命令服務生退還給他們,服務生偷偷藏起了2元,然後,把剩下的3元錢分給了那三個人,每人分到1元.這樣,一開始每人掏了1...