可視化圖解算法19:遞歸基礎
1. 示例 週末你帶着TA去電影院看電影,TA問你,咱們現在坐在第幾排啊?電影院裏面太黑了,看不清,沒法數,現在你怎麼辦? 這時可以這樣操作:問前一排的,他是第幾排。前一排的不知道自己是第幾排,繼續向前問。直到第一排,由於他面對着屏幕,知道自己是第一排。之後再給後面的回話:“我是第一排”,後面的知道了前面的,也就知道了自己的(在前面的基礎上+1)。之後再給後面的回覆。 2. 遞歸條件 3.
昵稱 cqu_jiangzhou
貢獻者26
粉絲0
1. 示例 週末你帶着TA去電影院看電影,TA問你,咱們現在坐在第幾排啊?電影院裏面太黑了,看不清,沒法數,現在你怎麼辦? 這時可以這樣操作:問前一排的,他是第幾排。前一排的不知道自己是第幾排,繼續向前問。直到第一排,由於他面對着屏幕,知道自己是第一排。之後再給後面的回話:“我是第一排”,後面的知道了前面的,也就知道了自己的(在前面的基礎上+1)。之後再給後面的回覆。 2. 遞歸條件 3.
昵稱 cqu_jiangzhou
1. 題目 描述 已知兩顆二叉樹,將它們合併成一顆二叉樹。合併規則是:都存在的結點,就將結點值加起來,否則空的位置就由另一個樹的結點來代替。例如: 數據範圍:樹上節點數量滿足 0 ≤n≤500,樹上節點的值一定在32位整型範圍內。 進階:空間複雜度 O(1) ,時間複雜度 O(n) 示例1 輸入: {1,3,2,5},{2,1,3,#,4,#,7} 返回值: {3,4,5,5,4,#,7}
昵稱 cqu_jiangzhou
1. 題目 描述 給定一個二叉搜索樹, 找到該樹中兩個指定節點的最近公共祖先。 1.對於該題的最近的公共祖先定義:對於有根樹T的兩個節點p、q,最近公共祖先LCA(T,p,q)表示一個節點x,滿足x是p和q的祖先且x的深度儘可能大。在這裏,一個節點也可以是它自己的祖先. 2.二叉搜索樹是若它的左子樹不空,則左子樹上所有節點的值均小於它的根節點的值; 若它的右子樹不空,則右子樹上所有節點的值均大於它
昵稱 cqu_jiangzhou
1. 題目 描述 給定一棵二叉樹(保證非空)以及這棵樹上的兩個節點對應的val值 o1 和 o2,請找到 o1 和 o2 的最近公共祖先節點。 數據範圍:樹上節點數滿足 1≤n≤10^5^ , 節點值val滿足區間 [0,n) 要求:時間複雜度 O(n) 注:本題保證二叉樹中每個節點的val值均不相同。 如當輸入{3,5,1,6,2,0,8,#,#,7,4},5,1時,二叉樹{3,5,1,6,2,
昵稱 cqu_jiangzhou
在當今數據驅動的時代,企業需要處理和存儲海量數據。數據湖與數據倉庫作為兩種主要的數據存儲解決方案,各自有其獨特的優勢與適用場景。本文將客觀詳細地介紹數據湖與數據倉庫的基本概念、核心區別、應用場景以及未來發展趨勢,幫助讀者更好地理解和選擇適合自身需求的數據存儲方案。 一、基本概念 數據湖(Data Lake) 數據湖的概念最早由Pentaho公司的James Dixon在2011年提出,是一種能夠存
昵稱 鏡舟科技
最大堆、最小堆、 heap 、 優先隊列在數據結構算法題目裏都是一個東西。這裏討論 container/heap 的使用。 參考: https://pkg.go.dev/container/heap https://github.com/EndlessCheng/codeforces-go/blob/master/copypasta/heap.go 靈佬筆記,非常有用 在算法題目中,我們經
昵稱 user_zsXbv7Bi
為什麼需要位運算 機器裏的數字表示方式和存儲格式就是二進制 位運算符 含義 運算符 示例 左移 0011 --- 0110 右移 0110 --- 0011 按位或 \ 0011 \ 1011 --- 1011 按位與 0
昵稱 Nick
字典樹的數據結構 字典樹,即 Trie 樹,又稱單詞查找樹或鍵樹,是一種樹形結構。典型應用是用於統計和排 序大量的字符串(但不僅限於字符串),所以經常被搜索引擎系統用於文本詞頻統計。 它的優點是:最大限度地減少 無謂的字符串比較,查詢效率 比哈希表高。 字典樹的基本性質 結點本身不存完整單詞。 從根結點到某一結點,路徑上經過的字符連接起來,為該結點對應的 字符串。 每個結點的所有子結
昵稱 Nick
動態規劃 Dynamic Programming Wiki 定義: https://en.wikipedia.org/wiki/Dynamic_programming “Simplifying a complicated problem by breaking it down into simpler sub-problems” (in a recursive manner) Divide
昵稱 Nick
深度優先搜索和廣度優先搜索 深度優先 DFS Depth First Search 遍歷方式 遞歸 非遞歸,使用循環遍歷,需要棧後進先出的特性來輔助 廣度優先 BFS Breadth First Search 遍歷方式 循環遍歷,需要隊列先進先出的特性來輔助 貪心算法 Greedy 貪心算法是一種在每一步選擇中都採取在當前狀態下最好或最優(即最有利)的選擇,從而希望導致結果是全局最好
昵稱 Nick
遞歸 應用場景 一個問題的解可以分解成多個子問題的解。 這個問題與分解之後的子問題,除了數據規模不同,求解思路完全一樣。 存在遞歸終止條件。 遞歸代碼編寫技巧 找到如何將大問題分解成小問題的規律,基於此寫出遞推公式,推敲終止條件,將遞推公式和終止條件翻譯成代碼。 只要遇到遞歸,就把它抽象成一個遞推公式,不用想一層層的調用關係,不要試圖用人腦去分解遞歸的每個步驟。 遞歸代碼編寫難點
昵稱 Nick
隨着數字化轉型的推動,低代碼開發在企業中應用的場景越來越多。但是企業在處理海量數據與系統對接時,常遇到困難。那麼如何快速將外部數據轉化為系統可識別的結構化模型?今天我們以JVS低代碼為例,詳細聊一聊。 在JVS低代碼系統中推出的數據轉模型組件,數據轉模型組件可以解決批量數據映射與關聯的問題。它通過自動化映射機制,將用户上傳的Excel、CSV等格式文件中的文本信息(如用户姓名、部門名稱、下拉
昵稱 軟件部長
摘要:歸檔冷數據至 S3,藉助 StarRocks 實現一致性驗證與存儲降本 作者:Riley ,Airtable 數據基礎設施團隊 導讀: 開源無國界,在本期“StarRocks 全球用户精選案例”專欄中,我們將介紹總部位於舊金山的雲端協作服務公司 Airtable。作為一家致力於讓用户像操作表格一樣輕鬆構建數據應用的企業,Airtable 在 2025 年完成
昵稱 StarRocks
備選標題: 數據分層,不止分層那麼簡單! 數據為什麼要分層?三招搞定多源異構數據 數據又多又亂,用的時候: 找不到? 算得慢? 還容易出錯? 別頭疼了!數據分層就是解決這些問題的“法寶”。 簡單説,它就是: 給數據建個清晰有序的“家”,讓每一類數據都有固定的位置和職責。 今天,我就帶大家拆解數據分層最核心的三大層: 數據運營層(ODS) 數據倉庫層(DW) 數據應用層(ADS
昵稱 數據集成與治理
“數據架構”這個詞,搞數據的同行們天天都在説。 但你真的能一句話講清楚它到底是啥、為啥那麼重要、又該怎麼設計嗎? 是不是一提到它,腦子裏就蹦出來一堆技術名詞和分層模型,比如 ODS、DWD、DWS、ADS? 打住!數據架構可遠不只是技術的堆砌。 今天,我就拋開那些模糊的概念和花哨的術語,用大白話手把手拆解數據架構的核心邏輯—— 數據架構到底是什麼? 為什麼需要數據架構?它有什麼作
昵稱 數據集成與治理
作者:任志民,2023 年加入去哪兒旅行數據平台團隊,主要負責數據平台 OLAP 引擎基礎建設和相關數據產品研發工作。 導讀: 在去哪兒網新一代數據平台架構中,StarRocks 作為統一 OLAP 引擎,替代了原有的 Trino、Presto、Druid、Impala、Kudu、Iceberg、ClickHouse 等多個引擎。如今,去哪兒網 StarRocks 集羣覆蓋全司業務線,支撐
昵稱 StarRocks
天天聽人説“數據架構”,是不是覺得有點懵又有點煩?別急!今天咱們就拋開那些高大上的術語,好好聊聊:數據架構到底是啥?它為啥這麼重要? 其實説白了,數據架構就是你公司裏那套管數據的“規矩”和“方法”——數據放哪?怎麼算?怎麼跑?怎麼用?全歸它管! 為啥要搞這套“規矩”?因為數據太亂了!到處是孤島,質量參差不齊,想用的時候找不着、用不好。好的數據架構,就是來解決這些頭疼事的!它能讓你公司的數據井井有
昵稱 數據集成與治理
公眾號不引流 工作中處理數據時,你是否曾被這些問題所困擾: 數據庫裏的字段名到底是什麼意思?報表裏的指標是怎麼算出來的?某個數據是從哪裏來的? 數據字典就是專門解答這些問題的工具。 它詳細記錄了數據的名稱、具體含義、類型、長度、可能的取值範圍、從哪裏來、怎麼算的等關鍵信息。無論是寫代碼的開發者、用數據做分析的同事,還是管理數據的人員,都需要數據字典來準確理解和使用數據。今天這篇文章會直接告訴你
昵稱 數據集成與治理
我發現很多企業做數字化,都遇到過這些問題: 上了ERP、MES、SCADA等系統,但數據互不聯通; 想做個生產分析,發現數據在ERP裏,質量數據在MES裏,設備數據又在另一個系統; 領導想看實時生產情況,IT部門卻要花好幾天整理數據。 但説到底,我們不是沒有數據,而是缺少一套能夠打通數據、真正服務業務的數據架構。 一、先搞清楚什麼是數據架構 一提到“架構”,有人覺得是 IT 部門的“技術
昵稱 數據集成與治理
回溯算法可以形象地理解為在一棵n 叉樹上的探索過程,其核心機制就是"開枝散葉"與"修剪枝條"的有機結合 理解回溯:以 Leetcode 93 題"復原 IP 地址"為例: 🌿 開枝過程 每個 IP 段的長度範圍為 [1, 3],因此每層循環最多擴展3 個分支 這相當於在樹的每個節點處,橫向展開1-3 條可能的路徑 🍃 散葉過程 選中一個有效分支後,縱向深入遞歸探索 IP
昵稱 杭城小劉
數據是體育 API 的核心資產,足球與籃球因運動特性差異,形成了各具特色的核心數據體系,且需通過標準化技術路徑實現接入與應用。以下從數據解析、技術實現、場景落地、實施考量四大維度,構建完整的 API 接入指南。 一、核心數據類型解析 1.足球數據維度 比賽基礎信息: 賽事架構:聯賽層級、賽季階段、比賽狀態 參與方信息:球隊陣容、球員資料、裁判組成 動態事件流: 場上行為:傳球路線、射門嘗試
昵稱 行走的體育數據庫
前言 本篇博客主要是記錄手寫這些這數據結構的底層實現,加深對線性結構的理解,實現自己的一個小型數據結構庫,也會進行簡單的時間複雜度分析,對不同的實現進行比較和優化,即側重於代碼實現。由於數據結構是實踐性比較強的一個科目,希望大家在看這篇博客時,自己也去寫一下代碼,看一下運行結果是不是自己想要的,我也會貼出我的運行結果來進行分析。 數組 數組介紹 數組是在內存中存儲相同數據類型的連續的空間,
昵稱 程序員波特
作者:李進勇 政採雲研發中心數據平台負責人 導讀: 在當下數字化轉型的浪潮中,數據早已從輔助資源躍升為核心生產資料和決策基礎。政府提升治理效能,企業優化運營、創新服務,都深度依賴對海量數據的實時洞察與高效處理。 政採雲平台作為政府採購數字化的創新典範,集監管、交易、服務於一體,經過近九年的發展,已成為行業內服務範圍最廣、用户數量最多、交易最活躍、監管產品最豐富的跨區域、跨層級、跨領域的一
昵稱 StarRocks
摘要:本文將詳細介紹如何通過StockTV API對接韓國和日本股票市場的實時行情數據,涵蓋從API申請、接口調用到數據解析的完整流程,並提供Python代碼示例。 一、StockTV API StockTV API 提供全球多個國家的金融市場數據,其中韓國和日本市場數據尤為全面。以下是選擇StockTV API的幾大理由: 覆蓋全面:支持韓國KOSPI、KOSDAQ和日本東京證券交易所
昵稱 CryptoRzz