原创 【leetcode】155最小棧

題目描述 https://leetcode-cn.com/problems/min-stack/ 思路 getMin() —— 檢索棧中的最小元素。需要輔助棧保存最小值。其他和棧功能相同。 也可以設置變量記錄最小值。 代碼實現: cla

原创 【leetcode】17 電話號碼組合

題目描述:  https://leetcode-cn.com/problems/letter-combinations-of-a-phone-number/submissions/  思路:  代碼實現: class Solution

原创 【leetcode】19 刪除鏈表的倒數第N個節點

題目描述: https://leetcode-cn.com/problems/remove-nth-node-from-end-of-list/submissions/ 思路: 快慢指針。 快指針先走n步, 如果快指針指向nullptr,

原创 【leetcode】236 二叉樹的最近公共祖先

題目描述: https://leetcode-cn.com/problems/lowest-common-ancestor-of-a-binary-tree/ 思路:  代碼實現: class Solution { public:

原创 【leetcode】【hot100】11盛最多水的容器

題目描述: https://leetcode-cn.com/problems/container-with-most-water/ 給你 n 個非負整數 a1,a2,...,an,每個數代表座標中的一個點 (i, ai) 。在座標內畫 n

原创 【leetcode】【hot100】3無重複字符的最長子串

題目描述: https://leetcode-cn.com/problems/longest-substring-without-repeating-characters/ 解題思路:  代碼實現: class Solution {

原创 【leetcode】【hot100】10.正則表達式

題目描述: https://leetcode-cn.com/problems/regular-expression-matching/ 解題思路:    代碼實現:   class Solution { public: boo

原创 【編程題】逛街

鏈接:https://www.nowcoder.com/questionTerminal/35fac8d69f314e958a150c141894ef6a 來源:牛客網   小Q在週末的時候和他的小夥伴來到大城市逛街,一條步行街上有很多高

原创 【編程題】字符串壓縮算法和常用的substr與replace函數

題目描述: 小Q想要給他的朋友發送一個神祕字符串,但是他發現字符串的過於長了,於是小Q發明了一種壓縮算法對字符串中重複的部分進行了壓縮,對於字符串中連續的m個相同字符串S將會壓縮爲[m|S](m爲一個整數且1<=m<=100),例如字符串

原创 LRU的實現:雙向鏈表和hashmap

 LRU緩存淘汰算法: LRU是最近最少使用策略的縮寫,是根據數據的歷史訪問記錄來進行淘汰數據,其核心思想是“如果數據最近被訪問過,那麼將來被訪問的機率也更高”。 利用鏈表實現LRU原理: 將Cache的所有位置都用雙鏈表連接起來,當

原创 完全二叉樹的葉子節點計算

一棵完全二叉樹共有2018個結點,則葉子結點的個數是? 共有2018個節點說明有11層,前10層的節點總數爲1023,所以第11層節點總數爲995,995個節點需要佔據第10層498個節點,所以第10層的葉節點爲512-498=14,所以

原创 軟件開發中的過程模型

在軟件開發過程中,我們可以採用不同的過程模型,下列有關增量模型描述正確的(B) 已使用一種線性開發模型,具有不可回溯性——瀑布模型 把待開發的軟件系統模塊化,將每個模塊作爲一個增量組件,從而分批次地分析、設計、編碼和測試這些增量

原创 【廣義表】長度和深度

廣義表長度=屬於最外層括號的逗號數加一。本題逗號爲0 所以長度爲1 廣義表深度=刪除幾層括號後可成爲一個序列。 廣義表即我們通常所說的列表(lists)。它放鬆了對錶元素的原子性限制,允許他們有自身結構。那麼廣義表E((a,(a,b),(

原创 函數【默認參數】

做了一道選擇題,讓選擇默認參數 int fun(int a, int b, int c); 1 int fun(int a = 0, int b = 1, int c = 1); 2 int fun(int a = 0, int b,

原创 memset()函數的一點總結

測試代碼: 總結: memset 函數是內存賦值函數,用來給某一塊內存空間進行賦值的; 包含在<string.h>頭文件中,可以用它對一片內存空間逐字節進行初始化; void *memset(void *s, int v, si