原创 MmGetSystemAddressForMdlSafe中safe的含義

MmGetSystemAddressForMdlSafe和MmGetSystemAddressForMdl其實都是宏,都直接或間接的調用了MmMapLockedPagesSpecifyCache內核函數。 MmMapLockedPages

原创 C++複習四-繼承與派生

目錄 一、概述 二、C++三種繼承方式 2.1 public、protected、private 指定繼承方式 2.2 using改變訪問權限 2.3 C++繼承時的名字遮蔽問題 2.4 具體解釋一下和作用域有關 2.5 C++繼承時的對

原创 C++複習二-默認參數-內聯函數-頭文件處理-類與對象

目錄 1.頭文件處理記住: 2.內聯函數: 3.C++函數的默認參數詳解 4.C++函數重載 5.類與對象 塊內容-命名空間 塊內容-函數調用慣例(stdcall,cdecl,pascal等解釋) 塊內容-C語言const的用法詳解 塊內

原创 C++複習五-多態和虛函數

一、概述 C++提供多態的目的是:可以通過基類指針對所有派生類(包括直接派生和間接派生)的成員變量和成員函數進行“全方位”的訪問,尤其是成員函數。如果沒有多態,我們只能訪問成員變量。 但是話又說回來,對象的內存模型是非常乾淨的,沒有包含任

原创 C++複習三-string-引用

目錄 一、C++ string詳解 string函數: 1.string 類提供的 length() 函數: 2.轉換爲C風格的字符串c_str() 3.string 字符串的輸入輸出 4.訪問字符串中的字符 5.字符串的拼接 6.插入字

原创 連續子數組的最大和-動態規劃

時間限制:C/C++ 1秒,其他語言2秒 空間限制:C/C++ 32M,其他語言64M 熱度指數:380643 本題知識點: 數組  算法知識視頻講解 題目描述 HZ偶爾會拿些專業問題來忽悠那些非計算機專業的同學。今天測試組開完會後,他又

原创 最小的k個數字-優先隊列大頂堆-快速排序k或中位數-小頂堆大頂堆自建-時間複雜度分析

題目: 輸入整數數組 arr ,找出其中最小的 k 個數。例如,輸入4、5、1、6、2、7、3、8這8個數字,則最小的4個數字是1、2、3、4。 示例 1: 輸入:arr = [3,2,1], k = 2 輸出:[1,2] 或者 [2,1

原创 習題:字符串的排列+解題思路+map

時間限制:C/C++ 1秒,其他語言2秒 空間限制:C/C++ 32M,其他語言64M 熱度指數:633870 本題知識點: 字符串 動態規劃 遞歸  算法知識視頻講解 題目描述 輸入一個字符串,按字典序打印出該字符串中字符的所有排列。例

原创 面試題39. 數組中出現次數超過一半的數字+map+摩爾投票

面試題39. 數組中出現次數超過一半的數字 難度簡單 數組中有一個數字出現的次數超過數組長度的一半,請找出這個數字。 你可以假設數組是非空的,並且給定的數組總是存在多數元素。 示例 1: 輸入: [1, 2, 3, 2, 2, 2, 5

原创 二叉搜索樹與雙向鏈表與樹的中序線索化

時間限制:C/C++ 1秒,其他語言2秒 空間限制:C/C++ 32M,其他語言64M 熱度指數:418309 本題知識點: 鏈表 樹  算法知識視頻講解 題目描述 輸入一棵二叉搜索樹,將該二叉搜索樹轉換成一個排序的雙向鏈表。要求不能創建

原创 二叉樹和爲某一值的路徑-路徑必須是從根節點出發,還必須非得到達葉節點。

時間限制:C/C++ 1秒,其他語言2秒 空間限制:C/C++ 32M,其他語言64M 熱度指數:589567 本題知識點: 樹  算法知識視頻講解 題目描述 輸入一顆二叉樹的根節點和一個整數,打印出二叉樹中結點值的和爲輸入整數的所有路徑

原创 動態規劃問題的理解

大問題的優化解包括減少優化解中的一個單元情況下的小問題的優化解。 代碼設置思路: 在最大(即減去一個最末單元)小問題的優化解成立下,該怎麼處理這個最末單元可以讓優化解變爲更大優化解! 01揹包問題和矩陣鏈乘法等都是這樣。

原创 二叉樹鏡像,兩種解題思路,注意記住第二種。

時間限制:C/C++ 1秒,其他語言2秒 空間限制:C/C++ 32M,其他語言64M 熱度指數:415644 本題知識點: 樹  算法知識視頻講解 題目描述 操作給定的二叉樹,將其變換爲源二叉樹的鏡像。 輸入描述: 二叉樹的鏡像定義:

原创 C++複習-this指針

this指針是和對象相關的,是一個 const 指針,它指向當前對象,通過它可以訪問當前對象的所有成員。 所謂當前對象,是指正在使用的對象。例如對於stu.show();,stu 就是當前對象,this 就指向 stu。 注意,this

原创 包含min函數的棧-最小堆的插入、刪除(調整)

時間限制:C/C++ 1秒,其他語言2秒 空間限制:C/C++ 32M,其他語言64M 熱度指數:448024 本題知識點: 棧  算法知識視頻講解 題目描述 定義棧的數據結構,請在該類型中實現一個能夠得到棧中所含最小元素的min函數(時