3. 紅黑樹 紅黑樹也是一種自平衡的二叉搜索樹,較之 AVL,插入和刪除時(shí)旋轉(zhuǎn)次數(shù)更少 紅黑樹特性 所有節(jié)點(diǎn)都有兩種顏色:紅與黑 所有 null 視為黑色 紅色節(jié)點(diǎn)不能相鄰 ...
3. 紅黑樹 紅黑樹也是一種自平衡的二叉搜索樹,較之 AVL,插入和刪除時(shí)旋轉(zhuǎn)次數(shù)更少 紅黑樹特性 所有節(jié)點(diǎn)都有兩種顏色:紅與黑 所有 null 視為黑色 紅色節(jié)點(diǎn)不能相鄰 ...
2. AVL 樹 前面介紹過,如果一棵二叉搜索樹長(zhǎng)的不平衡,那么查詢的效率會(huì)受到影響,如下圖 通過旋轉(zhuǎn)可以讓樹重新變得平衡,并且不會(huì)改變二叉搜索樹的性質(zhì)(即左邊仍然小,右邊仍...
查找算法 不管是之前學(xué)過的數(shù)組、鏈表、隊(duì)列、還是棧,這些線性結(jié)構(gòu)中,如果想在其中查找一個(gè)元素,效率是比較慢的,只有,因此如果你的需求是實(shí)現(xiàn)快速查找,那么就需要新的算法設(shè)計(jì),也...
2.10 二叉樹 二叉樹是這么一種樹狀結(jié)構(gòu):每個(gè)節(jié)點(diǎn)最多有兩個(gè)孩子,左孩子和右孩子 重要的二叉樹結(jié)構(gòu) 完全二叉樹(complete binary tree)是一種二叉樹結(jié)構(gòu),...
2.9 堆 以大頂堆為例,相對(duì)于之前的優(yōu)先級(jí)隊(duì)列,增加了堆化等方法 建堆 Floyd 建堆算法作者(也是之前龜兔賽跑判環(huán)作者): 找到最后一個(gè)非葉子節(jié)點(diǎn) 從后向前,對(duì)每個(gè)節(jié)點(diǎn)...
2.8 阻塞隊(duì)列 之前的隊(duì)列在很多場(chǎng)景下都不能很好地工作,例如 大部分場(chǎng)景要求分離向隊(duì)列放入(生產(chǎn)者)、從隊(duì)列拿出(消費(fèi)者)兩個(gè)角色、它們得由不同的線程來(lái)?yè)?dān)當(dāng),而之前的實(shí)現(xiàn)根...
2.7 優(yōu)先級(jí)隊(duì)列 無(wú)序數(shù)組實(shí)現(xiàn) 要點(diǎn) 入隊(duì)保持順序 出隊(duì)前找到優(yōu)先級(jí)最高的出隊(duì),相當(dāng)于一次選擇排序 視頻中忘記了 help GC,注意一下 有序數(shù)組實(shí)現(xiàn) 要點(diǎn) 入隊(duì)后排好序...
2.6 雙端隊(duì)列 概述 雙端隊(duì)列、隊(duì)列、棧對(duì)比 定義特點(diǎn)隊(duì)列一端刪除(頭)另一端添加(尾)First In First Out棧一端刪除和添加(頂)Last In First...
2.5 棧 概述 計(jì)算機(jī)科學(xué)中,stack 是一種線性的數(shù)據(jù)結(jié)構(gòu),只能在其一端添加數(shù)據(jù)和移除數(shù)據(jù)。習(xí)慣來(lái)說(shuō),這一端稱之為棧頂,另一端不能操作數(shù)據(jù)的稱之為棧底,就如同生活中的一...
2.4 隊(duì)列 概述 計(jì)算機(jī)科學(xué)中,queue 是以順序的方式維護(hù)的一組數(shù)據(jù)集合,在一端添加數(shù)據(jù),從另一端移除數(shù)據(jù)。習(xí)慣來(lái)說(shuō),添加的一端稱為尾,移除的一端稱為頭,就如同生活中的...
2.3 遞歸 概述 定義 計(jì)算機(jī)科學(xué)中,遞歸是一種解決計(jì)算問題的方法,其中解決方案取決于同一類問題的更小子集 In computer science, recursion i...
2.2 鏈表 概述 定義 在計(jì)算機(jī)科學(xué)中,鏈表是數(shù)據(jù)元素的線性集合,其每個(gè)元素都指向下一個(gè)元素,元素存儲(chǔ)上并不連續(xù) In computer science, a linked...
二. 基礎(chǔ)數(shù)據(jù)結(jié)構(gòu) 2.1 數(shù)組 概述 定義 在計(jì)算機(jī)科學(xué)中,數(shù)組是由一組元素(值或變量)組成的數(shù)據(jù)結(jié)構(gòu),每個(gè)元素有至少一個(gè)索引或鍵來(lái)標(biāo)識(shí) In computer scien...
一. 初識(shí)算法 1.1 什么是算法? 定義 在數(shù)學(xué)和計(jì)算機(jī)科學(xué)領(lǐng)域,算法是一系列有限的嚴(yán)謹(jǐn)指令,通常用于解決一類特定問題或執(zhí)行計(jì)算 In mathematics and co...
寫在前面 2021年10月30日00:44:00 今天寫項(xiàng)目測(cè)試dkmapper時(shí)報(bào)的錯(cuò),插入數(shù)據(jù),更新數(shù)據(jù),刪除數(shù)據(jù)操作都可以成功 唯獨(dú) 查詢操作報(bào)錯(cuò)!通過查閱資料解決問題...
Cookie Cookie概念(來(lái)源百度百科) cookie(儲(chǔ)存在用戶本地終端上的數(shù)據(jù))百度百科[https://baike.baidu.com/item/cookie/1...
引言 HTTP協(xié)議是Hyper Text Transfer Protocol(超文本傳輸協(xié)議)的縮寫,是用于從萬(wàn)維網(wǎng)服務(wù)器傳輸超文本到本地瀏覽器的傳送協(xié)議。HTTP 是基于 ...
環(huán)形鏈表 題目地址:141. 環(huán)形鏈表 - 力扣(LeetCode) (leetcode-cn.com)[https://leetcode-cn.com/problems/l...
字符串中第一個(gè)唯一字符 題目地址:387. 字符串中的第一個(gè)唯一字符 - 力扣(LeetCode) (leetcode-cn.com)[https://leetcode-cn...