原创 模擬指針

折騰了相當長一段時間,今天終於把代碼整理好了,小編是個自學的beginner,可以看到有些文字還只是摘抄的,好不容易纔弄出一篇有自己想法的東西。我目前的學習策略是,先把目標算法的相關代碼實現了,然後整體閱讀代碼,在代碼中加上自己的

原创 編譯完Qt5.8.0沒有報錯

編譯完Qt5.8.0沒有報錯 1、在官網上下載了qt-everywhere-opensource-src-5.8.0解壓到文件夾 2、在Developer Command Prompt for VS2015上編譯 3、利用解壓文件

原创 STL(standard template library)中的向量和表

C++的標準模板庫(STL)即是公共數據結構的實現。表ADT就是在STL中實現的數據結構之一。這些數據結構稱爲集合或容器。 表ADT的兩個實現:vector和list。vector給出表ADT的可增長的數組實現。優點是在常量時間

原创 HOW TO TALK ABOUT DOCTORS學習筆記

想法 十種醫生 1.An internist 用各種檢測手段檢查身體內部器官,找出患病跟病因 2.A gynecologist 專注於婦科疾病 3.An obstetrician 照看孕婦及接生 4.A pediat

原创 四個所需定義估計算法資源消耗

四個所需定義估計算法資源消耗 參考Mark Allen Weiss《數據結構與算法分析c++描述》第三版 1、如果存在正常數c 和n0 使得當N≥n0 時T(N)≤cf(N) ,則記爲T(N)=O(f(N)) 。 2、如果存在正

原创 編譯opencv3.2時遇到的問題(VS2015)

本文主要是回顧準備編譯、編譯過程中的感想,並沒有詳細的專業教程提供。 事情開始於做opencv官網一個tutorial——Image Watch: viewing in-memory images in the Visual S

原创 數據描述預備,幾個概念

數據對象:一組實例或值。 Boolean ={false, true } Digit = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9} Letter= {A, B, C, ⋯, Z, a, b, ⋯, z} Nat

原创 算法分析要點

參考Mark Allen Weiss《數據結構與算法分析c++描述》第三版,僅供學習交流之用,轉發請註明原出處。

原创 樹預備

樹 根節點 子樹 邊(有向的) 父親(結點) 兒子(結點) 兄弟(結點) 葉結點(沒有兒子的結點) 祖父(結點) 孫子(結點) 路徑(其長爲路徑上的邊的條數,每個結點到它自己有一條長爲0的路徑) (結點的)深度(從根到

原创 箱子排序

先上一幅圖片 這幅圖就概括了箱子排序的大致過程。 在箱子排序的過程中,使用了 Chain<T> 類模板、 ChainNode<T> 類模板以及Node 類,完成箱子排序功能的是BinSort 成員函數,它是Chain<T> 的成員。 以

原创 List的實現

重要技術點:iterator可用於可用於任何需要使用const_iterator的例程裏,反之則不是。 可以在表的末尾或前端添加一個額外的結點,這些額外的結點被稱爲哨兵結點,在頭部的結點稱爲表頭結點,在末端的結點稱爲尾結點。 版本1,未

原创 間接尋址

間接尋址是公式化描述和鏈表描述的組合。 大多數間接尋址鏈表操作的時間複雜性都與元素的總數無關。 在間接尋址方式中,使用一個指針表來跟蹤每個元素。可採用一個公式來定位每個指針的位置,以便找到所需要的元素。元素本身可能存儲在動態分配的節點或節

原创 鏈表描述

在鏈表描述中,數據對象實例的每個元素都放在單元或節點中進行描述。不過,節點不必是一個數組元素,因此沒有什麼公式可用來定位某個元素。取而代之的是,每個節點中都包含了與該節點相關的其他節點的位置信息。這種關於其他節點的位置信息被稱之爲鏈或指針

原创 AVL樹,最老的一種平衡查找樹

AVL樹是帶有平衡條件的二叉查找樹,這個平衡條件必須要容易保持,而且必須保證樹的深度是O(logN)。其每個結點的左子樹和右子樹的高度最多差1。 在高度爲h的AVL樹中,最少結點數S(h)=S(h-1)+S(h-2)+1給出。 AVL

原创 公式化描述

公式化描述採用數組來表示一個對象的實例,數組中的每個位置被稱之爲單元或節點。 可用一個數學公式來確定每個元素在數組中的位置。 實現一個線性表類 #pragma once #include <iostream> using namespac