一:直接沿用楊輝三角的方法,最後返回對應一行就可以。
二:空間複雜度為o(k)的方法,就是只用乙個陣列。
public ilist<
int>
getrow
(int rowindex)
//每一行有i+1個元素。
// result.add(lgx);
//}//一共numrows行。
//return result[rowindex];上面是以118題為基礎,直接返回對應一行。
int[
] result =
newint
[rowindex +1]
;for
(int i=
0;i1;i++)}
return result;
//這是空間複雜度為o(k)的方法。用乙個陣列代替鍊錶。
}
資料結構與演算法練習18
首先判斷字串如果長度為0或1就直接返回它的長度。然後用head指向每次子串的首位置,rear指向末位置的下乙個位置,子串的長度就是rear head。雙層for迴圈,外迴圈 i 遍歷1到s.length,內迴圈 j 判斷當前位置 i 是否等於head到rear間的乙個字元,如果相等,就令head j...
資料結構與演算法練習27
和課程表1的思路一模一樣,只是加個返回陣列。我這是用鍊錶,每次從佇列中彈出數時就加入鍊錶中,最後返回之前先判斷是否可以學完,再返回。public int findorder int numcourses,int prerequisites return lgx.toarray int a numco...
資料結構與演算法練習33
直接按行排序,用flag標識是往下走還是往上,直到行數為0或numrows才變。public string convert string s,int numrows int row 0 記錄當前在哪一行。bool flag false 在第一行或最後一行的時候要轉向。true往下,false往上。f...