原创 再談C++構造函數,構造函數體賦值,初始化列表,explicit關鍵字

構造函數體賦值 在創建對象時,編譯器通過調用構造函數, 給對象中各個成員變量一個合適的初值 比如之前的Date類: class Date { int m_year; int m_month; int m_day; publi

原创 三角矩陣

問題描述 給定一個三角矩陣, 計算從三角矩陣頂部到底部的最小路徑和, 每一步都可以移動到下面一行相鄰的數字 比如, 給定下面的三角矩陣 [2] [3] [4] [6] [5] [7] [4] [1] [8

原创 力扣(C++): 尋找數組的中心索引

題目描述 給定一個整數類型的數組 nums,請編寫一個能夠返回數組“中心索引”的方法。 我們是這樣定義數組中心索引的:數組中心索引的左側所有元素相加的和等於右側所有元素相加的和。 如果數組不存在中心索引,那麼我們應該返回 -1。如

原创 重複N次的元素

問題描述 在大小爲2N的數組A中有N+1個不同的元素, 其中有一個元素重複了N次 返回重複了N次的哪個元素 class Solution { public: int repeatedNTimes(vector<int>& A)

原创 malloc/free和new/delete的區別

malloc/free和new/delete的共同點是: 都是從堆上申請空間, 並且都需要用戶手動釋放 不同點 malloc和free是函數, new和delete是操作符 malloc申請的空間不會初始化, new可以 mal

原创 C++動態內存分配,operator new,operator delete以及new定位表達式

C++動態內存分配 operator new/delete函數 new和delete是用戶進行動態內存申請和釋放的操作符, operator new和operator delete是系統提供的全局函數. new 在底層調用oper

原创 力扣(C++): 贖金信

問題描述 給定一個贖金信(ransom)字符串和一個雜誌(magazine)字符串 判斷第一個字符串 ransom 能不能由第二個字符串 magazines 裏面的字符構成. 如果可以構成,返回 true;否則返回 false 題

原创 力扣(C++):第三大的數

題目描述 給定一個非空數組,返回此數組中第三大的數。如果不存在,則返回數組中最大的數。要求算法時間複雜度必須是O(n)。 示例 1: 輸入: [3, 2, 1] 輸出: 1 解釋: 第三大的數是 1. 示例 2: 輸入: [1,

原创 力扣(C++):按奇偶排列數組

問題描述 給定一個非負整數數組 A,返回一個數組,在該數組中, A 的所有偶數元素之後跟着所有奇數元素。 你可以返回滿足此條件的任何數組作爲答案。 示例: 輸入:[3,1,2,4] 輸出:[2,4,3,1] 輸出 [4,2,3,1

原创 力扣(C++): 存在重複元素

題目描述 給定一個整數數組,判斷是否存在重複元素。 如果任何值在數組中出現至少兩次,函數返回 true。如果數組中每個元素都不相同,則返回 false。 示例1 輸入: [1,2,3,1] 輸出: true 示例2 輸入: [1,