原创 輸出二叉樹中中序遍歷中給定結點的下一個結點

題目 輸出二叉樹中指定結點的下一個結點(即中序遍歷的後繼)。給定樹的根結點指針TreeNode* root和結點的值int p,請返回值爲p的結點的後繼結點的值,若不存在後繼返回-1。 分析 中序遍歷的非遞歸寫法。 第一步:中序遍歷的非遞

原创 2、Redis數據類型

傳統的key-value是指支持使用一個key字符串來索引value字符串的存儲,而Redis中的value不僅僅支持字符串,還支持更多的複雜結構,包括列表,集合,哈希表等。 1. Redis strings 字符串是一種最基本的Redi

原创 二叉查找樹的判斷

題目:給定樹的根結點指針TreeNode* root,請返回一個bool,代表該樹是否爲二叉查找樹。 方法一 二叉查找樹中序遍歷後的結果是有序的,根據這個結果,可以中序遍歷二叉樹,並把遍歷結果存放在一個數組裏面,然後判斷這個數組大小是否是

原创 二叉樹的最大深度和最小深度

二叉樹的定義: struct TreeNode { int val; TreeNode *left; TreeNode *right; TreeNode(int x) : val(x), l

原创 1.4 逆序一個棧

題目:一個棧依次壓入12345,實現棧中元素逆序 解法一:開闢了一個新的棧作爲輔助棧,將原棧中的元素依次彈出並壓入到輔助棧中,最後返回輔助棧。 //逆序一個棧 stack<int> reverseStack(stack<int> stac

原创 STL—vector

導入頭文件#include <vector> 1、定義和初始化 vector<int> a ; //聲明一個int型向量a vector<int> a(10) ; //聲明一個初始大小爲10的向量 vector<int> a(10

原创 C++ 4種強制類型轉換

C++的類型轉換符:static_cast、dynamic_cast、reinterpret_cast、和const_cast 形式:class_name <type>(expression) ,其中class_name爲以上4種,typ

原创 1、Redis簡介與安裝

1、Redis 簡介 1.1 Redis是什麼 REmote DIctionary Server(Redis) 是一個key-value存儲系統,常被稱作是一款數據結構服務器(data structure server)。Redis的鍵值

原创 滿二叉樹中任意兩個結點的公共祖先

題目 有一棵無窮大的滿二叉樹,其結點按根結點一層一層地從左往右依次編號,根結點編號爲1。現在有兩個結點a,b,求出a和b點的最近公共祖先的編號。 分析 滿二叉樹的子節點與父節點之間的關係爲root = child / 2 ,如果a !=

原创 (四)運輸層協議——TCP

TCP:傳輸控制協議,提供可靠的、面向連接的運輸服務,在傳送數據之前必須先建立連接(三次握手),數據傳送結束後釋放連接(四次揮手)。TCP不提供廣播或多播服務。還包括確認、流量控制、擁塞機制、計時器等管理機制。 UDP:用戶數據報,不提供

原创 求二叉樹中結點值的和爲指定整數的所有路徑

題目 輸入一顆二叉樹和一個整數,打印出二叉樹中結點值的和爲輸入整數的所有路徑。路徑定義爲從樹的根結點開始往下一直到葉結點所經過的結點形成一條路徑。 class Solution { public: vector<vector<in

原创 迭代器(iterator)

迭代器(iterator)是一種檢查容器內元素並遍歷元素的數據類型。 1、迭代器類型 (1)每種容器類型都定義了自己的迭代器類型,如vector: //定義了一個名爲iter的變量,它的數據類型是由`vector<int>`定義的iter

原创 (四)運輸層協議——UDP

TCP:傳輸控制協議,提供可靠的、面向連接的運輸服務,在傳送數據之前必須先建立連接(三次握手),數據傳送結束後釋放連接(四次揮手)。TCP不提供廣播或多播服務。還包括確認、流量控制、擁塞機制、計時器等管理機制。 UDP:用戶數據報,不提供

原创 改進版---字符串中數字子串的求和

【題目】   給定一個字符串str,求其中全部數字串所代表的數字之和。 【原始要求】   1、忽略小數點字符,例如"A1.3",其中包含兩個數字1和3。   2、如果緊貼數字子串的左側出現字符’-‘,當連續出現的數量爲奇數時,則數

原创 輸出二叉樹某一層的所有結點

題目:給定二叉樹的根結點指針以及鏈表上結點的深度,返回一個鏈表,代表該深度上從左往右所有結點的值。 方法 遞歸遍歷,剛開始爲深度爲dep,每往下遞歸一層,則深度減1,當深度爲1的時候,便輸出那個元素,如果先遞歸左子樹,那麼則實現從左到右打