數據結構與算法(刺猬書)讀書筆記----目錄
最近在抓底層的語言基礎,以前對數據結構和算法並沒有太大感覺,但越往深處學就越覺得這些基礎真的是要牢牢掌握住。一個簡簡單單的數組,深究起來都有很多學問。所以打算寫個一系列的讀書筆記,好好梳理一下這一塊的基礎知識。這本書是《數據結構預算法JavaScript描述》,是基於JavaScript的。裏面大致介紹了數組、列表、棧、隊列、鏈表、散列、集合及各種常見基礎算法。作為基礎讀物算是很全面的。這系列讀書筆記也將會跟著書裏的順序一章章的進行梳理。整個過程計劃耗時2-3個月,每周更新一到兩張,更新的筆記將會添加到本篇下方。
1. 數據結構與算法(刺猬書)讀書筆記(1)----數組
數據結構與算法(刺猬書)讀書筆記----目錄
相關推薦
數據結構與算法(刺猬書)讀書筆記----目錄
更新 rip javascrip tar 結構 順序 耗時 梳理 讀書筆記 最近在抓底層的語言基礎,以前對數據結構和算法並沒有太大感覺,但越往深處學就越覺得這些基礎真的是要牢牢掌握住。一個簡簡單單的數組,深究起來都有很多學問。所以打算寫個一系列的讀書筆記,好好梳理一下這一塊
數據結構與算法(刺猬書)讀書筆記(1)----數組
split() ring 此外 結果 shift 即使 cnblogs 操作符 main 在JavaScript中,數組其實是一種特殊的對象,用來表示偏移量的索引是該對象的屬性,所以JavaScript的數組本質上是對象。同時這些數字索引在內部會被轉換成為字符串類型,因為J
學習Javascript數據結構與算法(第2版)筆記(1)
布爾值 efi prim ray 叠代器 undefined ply 內部 HA 第 1 章 JavaScript簡介 使用 Node.js 搭建 Web 服務器 npm install http-server -g http-server JavaScript 的類型有
學習Javascript數據結構與算法(第2版)筆記(3)
清空 tac math bcd lse += 基本類型 In 所有 第 3 章 1. 棧數據結構 棧是一種遵從後進先出(LIFO)原則的有序集合。新添加的或待刪除的元素都保存在棧的同一端,稱作棧頂,另一端就叫棧底。在棧裏,新元素都靠近棧頂,舊元素都接近棧底。 1.1 棧的操
數據結構與算法(4)----->鏈表、二分搜索
無序 有序 通過 處理 als 思路 結構 blog clas 1. 鏈表的基本概念 鏈表和數組一樣都是一種線性結構; 數組是一段連續的存儲空間; 鏈表空間不一定保證連續,是臨時分配的; 鏈表的分類 按方向: 單鏈表:每個節
數據結構與算法(一)--數組
gpo fin ole max htm 算法 lower general print 數組 數組是應用最廣泛的數據存儲結構。它被植入到大部分的編程語言中,由於數組十分易懂,所以在這裏就不贅述,主要附上兩端代碼,一個是普通的數組,另一個是有序數組。有序數組是按關鍵字升序(或降
數據結構與算法(二)--棧與隊列
break col color 一個 大小 amp 頂上 const 試題 棧和隊列 棧和隊列都是比較常用的數據結構。棧的應用非常的廣泛,比如說,遞歸函數的實現就是借助於棧保存相關的數據。操作系統中每個線程也會使用棧來保存函數調用涉及到的一些參數和其他變量等。棧最大的一個特
數據結構與算法(二)
port timer類 mage pass func 代碼執行 atm 數據結構與算法 設置 python內置類型性能分析 timeit模塊 class timeit.Timer(stmt="pass",setup=‘pass‘,time=<timer functio
數據結構與算法(四)-線性表之循環鏈表
log ddc 兩個 方向 http return close 單向 throw 前言:前面幾篇介紹了線性表的順序和鏈式存儲結構,其中鏈式存儲結構為單向鏈表(即一個方向的有限長度、不循環的鏈表),對於單鏈表,由於每個節點只存儲了向後的指針,到了尾部標識就停止了向後鏈的操作。
數據結構與算法(八)-二叉樹(斜二叉樹、滿二叉樹、完全二叉樹、線索二叉樹)
大型 結點 develop pac string col 限制 也會 斐波那契數 前言:前面了解了樹的概念和基本的存儲結構類型及樹的分類,而在樹中應用最廣泛的種類是二叉樹 一、簡介 在樹型結構中,如果每個父節點只有兩個子節點,那麽這樣的樹被稱為二叉樹(Binary
python數據結構與算法(8)
sel 是否為空 earch pen klist term ado append shadow 鏈表與順序表的對?鏈表失去了順序表隨機讀取的優點,同時鏈表由於增加了結點的指針域,空 間開銷?較?,但對存儲空間的使?要相對靈活。鏈表與順序表的各種操作復雜度如下所示:註意雖然表
python數據結構與算法(9)
text fff one nag true mar 單鏈表 while 循環鏈表 指定位置插?節點 def insert(self, pos, item): """在指定位置添加節點"""
python數據結構與算法(6)
water 種類 出發 orm 改變 eal realloc -o text Python中的順序表Python中的list和tuple兩種類型采?了順序表的實現技術,具有前?討論的順 序表的所有性質。tuple是不可變類型,即不變的順序表,因此不?持改變其內部狀態的任何操
python數據結構與算法(7)
sea 數據 init ins ESS RoCE 數據結構與算法 true pos 單鏈表的操作is_empty() 鏈表是否為空 length() 鏈表?度 travel() 遍歷整個鏈表add(item) 鏈表頭部
python數據結構與算法(11)
允許 鏈表 __init__ sel 出隊 add 這也 ext shadow 隊列隊列(queue)是只允許在?端進?插?操作,?在另?端進?刪除操作的 線性表。隊列是?種先進先出的(First In First Out)的線性表
python數據結構與算法(12)
技術 sort type 實現 每次 blog pytho 數據結構 次數 排序與搜索排序算法(英語:Sorting algorithm)是?種能將?串數據依照特定順序進? 排列的?種算法。排序算法的穩定性穩定性:穩定排序算法會讓原本有相等鍵值的紀錄維持相對次
python數據結構與算法(13)
演示 依靠 51cto 復雜 因此 int fff 記錄 != 選擇排序選擇排序(Selection sort)是?種簡單直觀的排序算法。它的?作原理如 下。?先在未排序序列中找到最?(?)元素,存放到排序序列的起始位 置,然後,再從剩余未排序元素中繼續尋找最
python數據結構與算法(16)
nlogn 地理 ext mage alt 分析 ces img pre 時間復雜度最優時間復雜度:O(nlogn) 最壞時間復雜度:O(n ) 穩定性:不穩定從?開始快速排序平均需要花費O(n log n)時間的描述並不明顯。但是不難觀 察到的
python數據結構與算法(19)
root 通過 right python ges nod log roc 編號 ?叉樹?叉樹的基本概念?叉樹是每個節點最多有兩個?樹的樹結構。通常?樹被稱作“左?樹”(left subtree)和“右?樹”(right subtree)?叉樹的性質(特性)性質
數據結構與算法(2)- vector概念介紹
當前 博文 font happy 原創 怎麽辦 end 概念 del 聲明:雖然本系列博客與具體的編程語言無關。但是本文作者對c++相對比較熟悉,其次是java,所以難免會有視角上的偏差。舉例也大多是和這兩門語言相關。 Vector的出現主要是為了解決數組的靜態空間的問題。