tag 數據結構和算法

標籤
貢獻22
86
03:17 AM · Oct 27 ,2025

@數據結構和算法 / 博客 RSS 訂閱

HowieCong - 刷題前必學!二叉樹的遍歷!用JavaScript學數據結構與算法

🧑‍💻JavaScript算法與數據結構-HowieCong 務必要熟悉JavaScript使用再來學! 一、遍歷的方式 按照順序規則的不同,遍歷方式有如下四種: 先序遍歷 中序遍歷 後序遍歷 層次遍歷 按照實現方式的不同,遍歷方式又可以分為以下兩種: 遞歸遍歷(先,中,後序遍歷) 迭代遍歷(層次遍歷) 二

數據結構 , 算法 , 程序員 , 數據結構和算法 , Javascript

收藏 評論

goblin_pitcher - 單調棧模板和適用範圍

刷力扣時,遇到關鍵詞:下一個更大/小的數這類題目時,往往會採用單調棧的解法,如每日温度 刷題最常見的問題就是,看到題解,感覺很精妙,但下次遇到一模一樣的題目時,往往知道思路,但寫不出代碼,有或者遇到類似的變體題目時,不會往這方面想。這兩種情況在之前的文章(數據結構算法小結)中提到過,分別有兩方面的原因: 對工具(如單調棧知識點)的特性(適用範圍)不明朗 對工具的原理沒有真正的理解 初學單調

數據結構和算法 , 前端 , Javascript

收藏 評論

XPoet - 零基礎入門 JavaScript 算法

前言 提及算法,可能會有很多前端同學覺得這是一個距離自己日常工作較遠的領域,認為算法並沒有那麼重要。事實上,這種看法是片面的,算法不僅僅是計算機科學中的一個重要概念,在前端開發中也有着廣泛的應用和巨大的價值。 一個精心設計的算法可以大幅度提高應用的性能和效率,例如:如何在大量數據中快速找到指定信息、如何高效地處理用户輸入、如何在動畫效果中保持流暢的用户體驗、如何讓頁面加載更快、響應更靈敏等等場景,

算法 , 面試 , 數據結構和算法 , 前端 , Javascript

收藏 評論

用户bPdd2O9 - 數據結構之美-深入理解樹形結構

一 認識樹形結構 樹形結構是一種廣泛應用的非線性數據結構,它在計算機科學和日常生活中都有廣泛的應用。比如文件系統,郵件系統,編譯器語法樹,決策樹,網絡通信,甚至機器學習當中,都有樹形數據結構的影子。本文旨在梳理日常用到的各類樹形結構以及其優點和劣勢,讓瀆者對樹形結構有一個深入的認知和了解。下面列舉幾類常見的樹形結構的應用場景。 1.1 文件系統 計算機中用於存儲和管理文件的一種系統,它使用樹形結構

數據結構 , 樹形結構 , 數據庫 , JAVA , 數據結構和算法

收藏 評論

思否編程 - 小小算法,拿捏了🫴

如今,許多公司在招聘過程中越來越重視候選人的算法能力。無論是初創公司還是知名企業,筆試和麪試中幾乎都要經過算法和數據結構的考核。這不僅是為了評估候選人的編程能力,更是為了考查他們解決問題的思維方式。 即使你並不打算進入大公司,掌握算法依舊對你在 IT 行業的長期發展至關重要。算法不僅涉及編碼能力,它們還影響着系統設計、數據處理的效率和優化。隨着項目的複雜性增加,算法知識的重要性將愈加突出。 那麼,

學習 , 開發者 , 數據結構和算法

收藏 評論

HowieCong - 刷題前必學!數組!用JavaScript學數據結構與算法

🧑‍💻JavaScript數據結構與算法-HowieCong 務必要熟悉JavaScript使用再來學! 數組 在 JavaScript 中,數組是一種特殊的對象,用於存儲多個值的有序集合 1. 數組的創建 // 方括號+元素內容 const arr = [1,2,3] // 構造函數,等價於 const arr = [] const arr = new Array();

數據結構 , 算法 , segmentfault , 程序員 , 數據結構和算法

收藏 評論

HowieCong - 刷題前必學!棧與隊列!用JavaScript學數據結構與算法

🧑‍💻JavaScript數據結構與算法-HowieCong 務必要熟悉JavaScript使用再來學! 一、數組增刪操作 在瞭解棧和隊列前,明確數組中的增刪操作具有什麼樣的特性、對應的方法有哪些: 靈活增刪的數組 數組增加元素的三種方法: unshift方法,添加元素到數組的頭部

數據結構 , 算法 , 程序員 , 數據結構和算法 , Javascript

收藏 評論

HowieCong - 刷題前必學!鏈表!用JavaScript學數據結構與算法

🧑‍💻JavaScript數據結構與算法-HowieCong 務必要熟悉JavaScript使用再來學! 一、鏈表的基本形態 鏈表和數組都是有序的列表,都是線性結構(有且僅有一個前驅,有且僅有一個後續);不同點在於,鏈表中,數據單位的名稱叫做“結點”,而結點和結點的分佈,在內存中都是離散的 1. 數組的“連續” 在內存中最為關鍵的一個特徵,就是對應一段位於自身上界和下界之間的,一段連

數據結構 , 算法 , 程序員 , 數據結構和算法 , Javascript

收藏 評論

HowieCong - 刷題前必學!二叉樹!用JavaScript學數據結構與算法

🧑‍💻JavaScript算法與數據結構-HowieCong 務必要熟悉JavaScript使用再來學! 一、樹是什麼? 數據結構中的樹,對於現實世界中的樹簡化——樹根抽象為“根節點”,樹枝抽象為“邊”,樹枝的兩個端點抽象為“結點”,樹葉抽象為“葉子結點” 計算機中的樹如下: 二、樹的重點 樹的層次計算規則:根結點所在的那一層為第一層,其子節點為第二層,以此類推 結點和樹

數據結構 , 算法 , 程序員 , 數據結構和算法 , Javascript

收藏 評論

goblin_pitcher - 數據結構算法小結

前言 解決問題思維方式 假設我們有一整套螺絲刀,要進行筆記本清灰操作,我們主要的思維邏輯如下: 若要清灰,必須先取出風扇 若要取出風扇,必須先把從外殼到風扇的螺絲全部拆下 那麼清灰問題就變成了拆一堆不同規格的螺絲,當我們看到不同規格的螺絲,就會比較螺絲口大小、形狀和螺絲刀規格,從而選取對應的螺絲刀。 可以看出,當我們遇到一個複雜問題,下意識的思維方式就是將一個複雜問題,轉移成我們熟知的一些

數據結構和算法 , 前端

收藏 評論

HowieCong - 刷題前必學!時間複雜度和空間複雜度!用JavaScript學數據結構與算法

🧑‍💻JavaScript算法與數據結構-HowieCong 務必要熟悉JavaScript使用再來學! 一、時間複雜度 (1)下面代碼,一共執行了幾次? function traverse(arr){ // 最沒有懸念的是函數裏面的第一行代碼,只會被執行1次 var len = arr.length // 1. i的初始化語句,只有一次,只會被執行1次 //

數據結構 , 算法 , 程序員 , 數據結構和算法 , Javascript

收藏 評論

HowieCong - 刷題前必學!數組實戰-雙指針!用JavaScript學數據結構與算法

🧑‍💻JavaScript算法與數據結構-HowieCong 務必要熟悉JavaScript使用再來學! 一、兩數求和——Map 原題: 給定一個整數數組 nums 和一個目標值 target,請你在該數組中找出和為目標值的那 兩個 整數,並返回他們的數組下標。你可以假設每種輸入只會對應一個答案。但是,你不能重複利用這個數組中同樣的元素。 示例: 給定 nums = [2, 7, 1

數據結構 , 算法 , 程序員 , 數據結構和算法 , Javascript

收藏 評論

HowieCong - 刷題前必學!鏈表實戰!用JavaScript學數據結構與算法

🧑‍💻JavaScript算法與數據結構-HowieCong 務必要熟悉JavaScript使用再來學! 一、鏈表三種方向 鏈表的處理:合併、刪除等(刪除操作畫個記號) 鏈表的反轉及其衍生題目 鏈表成環問題及其衍生題目 二、鏈表的合併 原題: 將兩個有序鏈表合併為一個新的有序鏈表並返回。新鏈表是通過拼接給定的兩個鏈表的所有結點組成的。 示例: 輸入:1-2-4, 1-3-4

數據結構 , 算法 , segmentfault , 數據結構和算法 , Javascript

收藏 評論

cqu_jiangzhou - 可視化圖解算法19:遞歸基礎

1. 示例 週末你帶着TA去電影院看電影,TA問你,咱們現在坐在第幾排啊?電影院裏面太黑了,看不清,沒法數,現在你怎麼辦? 這時可以這樣操作:問前一排的,他是第幾排。前一排的不知道自己是第幾排,繼續向前問。直到第一排,由於他面對着屏幕,知道自己是第一排。之後再給後面的回話:“我是第一排”,後面的知道了前面的,也就知道了自己的(在前面的基礎上+1)。之後再給後面的回覆。 2. 遞歸條件 3.

遞歸 , 數據結構 , 算法 , 遞歸調用 , 數據結構和算法

收藏 評論

user_zsXbv7Bi - 理解 Golang 中的最大/最小堆、`heap` 與優先隊列

最大堆、最小堆、 heap 、 優先隊列在數據結構算法題目裏都是一個東西。這裏討論 container/heap 的使用。 參考: https://pkg.go.dev/container/heap https://github.com/EndlessCheng/codeforces-go/blob/master/copypasta/heap.go 靈佬筆記,非常有用 在算法題目中,我們經

數據結構 , 數據結構和算法 , go

收藏 評論

下一個絕世 - 2025 年熱門 CRM 軟件:10 款首選產品

2025年熱門CRM軟件:10款首選產品 在數字化浪潮的推動下,CRM軟件已成為企業提升客户滿意度和推動增長的關鍵工具。CRM的選擇對業務績效具有至關重要的影響,因此瞭解最新趨勢和市場最佳選擇是每個企業必須重視的工作。本文將為您呈現2025年市場上十大熱門CRM軟件,助您找到最適合的解決方案。 Zoho CRM Zoho CRM憑藉其靈活性和豐富的功能集在全球範圍內廣受歡迎。它提供了

數據結構和算法 , 分析

收藏 評論

追風的苦咖啡 - 政務領域應用:國密 SSL 證書如何守護 “一網通辦” 的數據安全?

政務數字化的核心安全需求,“一網通辦” 作為政務服務的核心載體,其數據安全直接關係到公眾信任與政務合規,國密 SSL 證書主要通過全鏈路加密、身份強認證、數據防篡改三大核心能力實現守護。 一、核心作用:覆蓋 “一網通辦” 全數據流轉環節 “一網通辦” 的核心數據流轉包含 “用户提交→平台傳輸→部門共享→結果反饋” 四大環節,國密 SSL 證書針對每個環節的風險點提供針對性防護: 用户提

ssl證書 , 安全證書 , 安全防護 , HTTPS , 數據結構和算法

收藏 評論

週一pro - 二叉樹遞歸套路(4):最低公共祖先、派對的最大快樂值

今天繼續二叉樹的遞歸套路。 一、最低公共祖先 給定一個二叉樹的頭節點,和另外兩個節點a、b,返回a、b的最低公共祖先。 最低公共祖先定義:a、b往上找,第一個相同的祖先(這個公共祖先也可能是a或b自己) 1、遞歸套路思路 對於二叉樹中的任意一個節點X,以及兩個節點a、b,a和b的最低公共祖先分為兩種情況。 (1)與X無關,即最低公共祖先不是X a、b在左樹中某個點匯聚了 a、b在右樹中某個點匯聚了

數據結構 , 算法 , JAVA , 二叉樹 , 數據結構和算法

收藏 評論

大道無情我有情 - 【每日一題】LFU 緩存

一個緩存結構需要實現如下功能: void set(int key,int value):加入或者修改 key 對應的 value int get(int key):查詢 key 對應的 value 值 但是緩存最多放 K 條記錄,如果新的 K + 1 條記錄需要加入,就需要根據策略刪掉一條記錄,然後才能把新記錄加入。 這個策略為:在緩存結構的 K 條記錄中,哪一個 key 從進入緩存結

, 算法 , 面試問題 , 鏈表 , 數據結構和算法

收藏 評論

lucifer - 不知道蓄水池抽樣算法?那就進來看看吧~

力扣中關於蓄水池抽樣問題官方標籤是 2 道,根據我的做題情況來看,可能有三四道。比重算是比較低的,大家可以根據自己的實際情況選擇性掌握。 蓄水池抽樣的算法思維很巧妙,代碼簡單且容易理解,就算不掌握它,作為了解也是很不錯的。 問題描述 給出一個數據流,我們需要在此數據流中隨機選取 k 個數。由於這個數據流的長度很大,因此需要邊遍歷邊處理,而不能將其一次性全部加載到內存。 請寫出一個隨機選擇算法,使得

隨機數 , leetcode , 算法 , 數據結構和算法

收藏 評論

大道無情我有情 - 【每日一題】調整搜索二叉樹中兩個錯誤的節點

一棵二叉樹原本是搜索二叉樹,但是其中有兩個節點調換了位置,使得這棵二叉樹不再是搜索二叉樹,請找到這兩個錯誤節點並返回。 已知二叉樹中所有節點的值都不一樣,給定二叉樹的頭節點 head,返回一個長度為 2 的二叉樹節點類型數組 errs,errs[0] 表示一個錯誤節點,errs[1] 表示另一個錯誤節點。 解法一:遞歸 如下圖對搜索二叉樹進行中序遍歷,可以得到一個升序數組。如果搜索二叉樹中

算法 , 二叉搜索樹 , 面試問題 , 二叉樹 , 數據結構和算法

收藏 評論

bigsai - 數據結構—搞懂雙鏈表

前言 前面有很詳細的講過線性表(順序表和鏈表),當時講的鏈表以單鏈表為主,但在實際應用中雙鏈表有很多應用場景,例如大家熟知的LinkedList。 雙鏈表與單鏈表區別 單鏈表和雙鏈表都是線性表的鏈式實現,它們的主要區別在於節點結構。單鏈表的節點包含數據字段 data 和一個指向下一個節點的指針 next,而雙鏈表的節點除了 data 和 next,還包含指向前一個節點的指針 pre。這個區別會導

算法 , 鏈表 , JAVA , 數據結構和算法 , 後端

收藏 評論

喬梓鑫 - Morris遍歷(線索二叉樹)

前言 現將左老師課上的morris遍歷內容進行歸納整理,java版本代碼均為左老師課上代碼,c++代碼為本人直接改寫,並均通過leetcode測試。 什麼是morris遍歷 morris遍歷是利用二叉樹本身空閒出來的指針(n個節點的二叉樹有n+1個指針空閒)來作為輔助變量完成二叉樹的遍歷的一種方法。Morris遍歷法能以O(1)的空間複雜度和O(n)的時間複雜度實現二叉樹的三種遍歷,其中不使用棧或

遍歷 , 二叉樹 , 數據結構和算法

收藏 評論

週一pro - 二叉樹遞歸套路(2):判斷二叉樹是否是搜索二叉樹、二叉樹的最大距離

本篇繼續來聊聊二叉樹的遞歸套路。 一、判斷二叉樹是否是搜索二叉樹 搜索二叉樹定義:二叉樹中的任意一個以X為頭的子樹,左子樹都比X小,右子樹都比X大。(經典的搜索二叉樹是沒有重複值的) 1、經典做法 中序遍歷,結果是遞增的,説明這是搜索二叉樹。 2、遞歸套路思路 分析任意一個以X為頭的子樹,滿足以X為頭的子樹是搜索二叉樹的條件(列出所有可能性) 1)左子樹是搜索二叉樹 2)右子樹是搜索二叉樹 3)左

遞歸 , 算法 , 數據結構與算法 , 二叉樹 , 數據結構和算法

收藏 評論