public class resizingarraystackimplements iterable
/*** 獲取棧大小
* @return
*/public int size()
/*** 調整棧的大小
* @param max
*/private void resize(int max)
@override
public iteratoriterator()
private class reversearrayiterator implements iterator
@override
public item next()
}}
這裡實現了後進先出的迭代。
這種資料型別保證了每種操作與棧的大小無關,並且棧的大小總是不會超過資料大小的乙個常數倍(**中該常數為2)。但是在進行某些push或者pop操作的時候,可能會改動棧的大小,因為改動時是採用拷貝的方式,就會耗費比較多的時間,其與棧的大小成正比。
大整數乘法 陣列實現
實現思路 按照乘法規則,乘數和被乘數分別是,num1,num2。按照從後往前的順序遍歷num1,num2中的每一位上數字,首選取num2的最後一位分別於num1上的每一位相乘,將得到的結果儲存在陣列ret中,在之後的每一次遍歷開始,使得ret都是從上一次開始位置減一出從新開始,並且執行對應位置上的自...
大整數加法(陣列實現)
實現任意範圍的兩個整數的加法 整數的範圍用 int 型的變數無法表示 大整數加法。實現任意範圍的兩個整數的加法 整數的範圍用 int 型的變數無法表示 void addsuper b 50 rst 50 p int lena,lenb,max,min,tmp int while gets a nul...
c ,類的資料成員有陣列,且動態調整陣列大小
當想要乙個自定義類的資料成員有陣列時,不是用 比如 int a 50 這樣只能指定大小 而是在資料成員中 用t heap 指向陣列首元素 int capacity 表示陣列的容量 然後再構造類的時候,用乙個heap new t cap 同時別忘了 析構的時候 delete heap 然後resize...