題目1:定義乙個空的型別,裡面沒有任何的成員變數和成員函式,對該型別求sizeof,結果是多少?
答案:1
追問:為什麼不是0?
答案:空型別的例項中不包含任何資訊,本來求sizeof應該是0,但是當我們宣告該型別的例項的時候,它必須在記憶體中占有一定的空間,否則無法使用這些例項。至於占用多少記憶體,由編譯器決定。visual studio中每個空型別的例項占用1位元組的空間。
追問:如果在該型別中新增乙個建構函式和析構函式,再對該型別求sizeof,得到的結果又是多少?
追問:那如果把析構函式標記為虛函式呢?
答案:c++的編譯器一旦發現乙個型別中有虛函式,就會為該型別生成虛函式表,並在該型別的每乙個例項中新增乙個指向虛函式表的指標。在32位的機器上,乙個指標佔4位元組的空間,因此求sizeof得到4;如果是64位的機器,乙個指標佔8位元組的空間,因此求sizeof則得到8。
注:題目兩字紅色加粗字型為,問題為紅色加粗字型,黑色字型為解答(重點用藍色標出),追問為橘紅不加粗字型。
題目3:二維陣列中的查詢
題目4:替換空格
題目5:從尾到頭列印鍊錶
題目6:重建二叉樹
題目7:兩個棧實現佇列
題目8:旋轉陣列的最小數字
題目9:菲波那切數列 & 青蛙跳台階
題目10:二進位制中1的個數
題目11:數值的整數次方
題目12:列印從1到最大的n位數
題目13:在o(1)時間內刪除鍊錶中的節點
題目14:調整陣列順序是奇數字於偶數前面
題目15:鍊錶中倒數第k個節點
題目16:反轉鍊錶
題目17:合併兩個有序鍊錶
題目18:樹的子結構
題目19:二叉樹的映象
題目20:順時針列印矩陣
題目22:棧的壓入和彈出序列
題目23:從上往下列印二叉樹
題目26:複雜鍊錶的複製
題目29:陣列**現次數超過陣列長度一半的數字
題目30:最小的k個數
題目31:連續子陣列的最大和
題目35:第乙個只出現一次的字元
劍指offer題目
在乙個二維陣列中 每個一維陣列的長度相同 每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。把乙個陣列最開始的若干個元素搬到陣列的末尾,我們稱之為陣列的旋轉。輸入乙個非減排序的陣列的乙個旋轉,輸出旋轉陣...
劍指offer的題目
題目描述 乙隻青蛙一次可以跳上1級台階,也可以跳上2級 它也可以跳上n級。求該青蛙跳上乙個n級的台階總共有多少種跳法。分析 跳乙個n階台階的方法數 class solution 題目描述 我們可以用2 1的小矩形橫著或者豎著去覆蓋更大的矩形。請問用n個2 1的小矩形無重疊地覆蓋乙個2 n的大矩形,總...
劍指OFFER 題目review
劍指offer ac 三道題,現在review下 題目一 從尾到頭列印鍊錶 輸入乙個鍊錶,按煉錶值從尾到頭的順序返回乙個arraylist。我的思路 1.鍊錶值從頭到尾順序放入vector中 2.逆序vector 實現 class solution int size data.size for in...