原创 Vue2 雙向綁定原理(數據響應式)

目錄 1. MVVM 定義 優點 缺點 2. Vue2 雙向綁定原理(數據響應式) 原理概述 數據劫持 發佈與訂閱 (一)MVVM 1. 定義: MVVM 是 Model-View-ViewModel(模型-視圖-視圖模型

原创 Vue:模板編譯 Virtual DOM

(一)Vue模板編譯 在Vue中我們有三種方式來創建HTML 模板 手動寫渲染函數 JSX 渲染函數是最原始的方法,而模板最終會通過編譯轉換陳渲染函數。渲染函數執行後,會得到一份vnode用來渲染真實DOM。所以,模板編譯其實

原创 不同版本vue-cli區別 詳解

目錄 vue-cli 命令 項目結構 設置環境變量 (一)vue-cli 命令 1. vue-cli下載安裝: vue-cli2: npm install vue-cli -g vue-cli3/cli4:

原创 《數據結構與算法之美》學習筆記(5) 哈希算法 紅黑樹

哈希算法 (1)什麼是哈希算法? 將任意長度的二進制值串映射爲固定長度的二進制值串,這個映射的規則就是哈希算法,而通過原始數據映射之後得到的二進制值串就是哈希值。 (2)設計好的哈希算法要求 要想設計一個優秀的哈希算法,需要滿足的

原创 Vue項目實戰:訂單確認頁面實現

目錄 訂單父組件結構封裝 地址和商品數據加載 地址刪除功能實現 新增地址交互實現 地址編輯和訂單提交 訂單確認頁面 如下: (1)訂單父組件結構封裝 回顧路由文件router.js中關於order的路由:

原创 算法- 遞歸算法 分治算法

遞歸算法 (1)遞歸需要滿足的三個條件 一個問題的解可以分解爲幾個子問題的解 何爲子問題?子問題就是數據規模更小的問題。 這個問題與分解之後的子問題,除了數據規模不同,求解思路完全一樣 存在遞歸終止條件 把問題分解爲子

原创 數據結構 - 堆

堆 (1)什麼是二叉堆 二叉堆本質上是一種完全二叉樹,二叉堆的經典表示方法是使用一個數組表示,其中: 根結點爲數組的第一個元素A[0]。 其它結點中,第i個結點和數組索引元素對應的關係爲: A[(i – 1) / 2]

原创 《數據結構與算法之美》學習筆記(3) 數據結構

數組 數組定義: 數組(Array)是一種線性表數據結構。它用一組連續的內存空間,來存儲一組具有相同類型的數據。 這個定義裏有幾個關鍵詞。 第一是線性表(Linear List)。顧名思義,線性表就是數據排成像一條線一樣的結構。每

原创 《數據結構與算法之美》學習筆記(1)

爲什麼學習數據結構與算法? 直接的好處是能夠寫出性能更優的代碼。 算法,是一種解決問題的思路和方法,有機會應用到生活和事業的其他方面。 數據結構與算法,能有效訓練大腦思考能力,使我們看待問題的深度,解決問題的角度就會完全不一樣。

原创 《數據結構與算法之美》學習筆記(2) 複雜度分析

複雜度分析 一. 如何分析、統計算法的執行效率和資源消耗? (1)大 O 複雜度表示法 先看一段代碼: int cal(int n) { int sum = 0; int i = 1; for (; i <=

原创 算法 - 排序算法

排序算法 相關概念 穩定:如果a原本在b前面,而a=b,排序之後a仍然在b的前面。 不穩定:如果a原本在b的前面,而a=b,排序之後 a 可能會出現在 b 的後面。 時間複雜度:對排序數據的總的操作次數。反映當n變化時,操作次數

原创 數據結構 - 圖

圖 圖是網絡結構的抽象模型。圖是一組由邊連接的節點(或頂點),任何二元關係都可以用圖來表示。 一個圖G=(V, E)由以下兀素組成: V: 一組頂點 E: 一組邊,連接V中的頂點 下圖表示一個圖: 由一條邊連接在一起的頂點稱

原创 數據結構 - 鏈表

鏈表 要存儲多個元素,數組(或列表)可能是最常用的數據結構。 每種語言都實現了數組。這種數據結構非常方便,提供了一個便利的[]語法來訪問它的元素。 然而,這種數據結構有一個缺點:在大多數語言中,數組的大小是固定的,從數組的起點或中

原创 數據結構 - 隊列

隊列 隊列是一種遵循先進先出 (FIFO / First In First Out) 原則的一組有序的項;隊列在尾部添加新元素,並從頭部移除元素。最新添加的元素必須排在隊列的末尾。 class Queue { constr

原创 數據結構 - 樹

樹 樹是一種非順序數據結構,一種分層數據的抽象模型,它對於存儲需要快速查找的數據非常有用。 一個樹結構包含一系列存在父子關係的節點。每個節點都有一個父節點(除了頂部的第一個 節點)以及零個或多個子節點: 樹大概包含以下幾種結構/