劍指OFFER 題目review

2021-08-26 12:18:01 字數 1119 閱讀 2202

劍指offer ac 三道題,現在review下:

題目一:從尾到頭列印鍊錶

輸入乙個鍊錶,按煉錶值從尾到頭的順序返回乙個arraylist。

我的思路:

1.鍊錶值從頭到尾順序放入vector中

2.逆序vector

**實現:

class solution 

int size = data.size();

for(int i = 0; i < size / 2; i++)

return data;

}};

**問題未加邊界條件:if(head != null)執行主程式。

其他解法

逆序問題可考慮遞迴,堆疊的方法。

遞迴:注意將value設為全域性變數,節省記憶體;

class solution

value.push_back(p -> val);

}return value;

棧思路:

class solution

while( !stk.empty() )

return value;

}}

題目二:替換空格題目三:二維陣列的查詢

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

思路:從左下角開始查詢較快。

class solution 

if( i != -1 && j != colcount )

return

true;

else

return

false;

}};

注意邊界條件不要寫錯((array[i][j] != target && (i != -1 && j != colcount)

劍指offer題目

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

劍指offer的題目

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

劍指offer題目彙總

1.數值的整數次方 題目描述 給定乙個double型別的浮點數base和int型別的整數exponent。求base的exponent次方。如下 class solution double powerpositive double base,int exponent 2.調整陣列順序使奇數字於偶數前...