搜尋到 49 篇相關的文章

0. 導論 在合併排序法和快速排序法中, 其時間複雜度達到了排序時間複雜度的下限 . 但是, 從空間的角度來說, 不管是使用遞迴來實作還是使用堆疊來消除遞迴, 我們仍然需要 的空間來輔助排序的過程. …
1. 定義 定義 1. 一棵二元樹 是有限個元素的集合 (可以為空). 當二元樹非空時, 其中有一個元素 作為樹的根, 餘下的元素 (若存在) 被劃分為兩顆二元樹, 分別是 的左子樹和右子樹. 一般來…
定義 1. 一棵樹 是一個非空的有限元素集合, 其中一個元素為根, 其餘元素 (若有) 組成了 的子樹 在畫一棵樹的時候, 每個元素都代表著一個節點. 樹的根節點畫在最上面, 其子樹畫在下面, 使用一…
在線性表中, 包括陣列和連結串列, 搜尋元素的時間複雜度為 . 而雜湊表是搜尋友好的資料結構, 它可以將搜尋的時間複雜度降低到 . 雜湊表使用雜湊函數將值影射到雜湊表的具體位置. 如果元素為 , 雜湊…
我們在《【資料結構】跳躍列表 (理論篇)》中講述了跳躍列表的基本結構, 根據 C++ 標準樣板程式庫中容器的大致樣子, 我們今天要實作一個和這些容器差不多的跳躍列表 要實作這樣一個容器, 首先就要實作…
  • C++
  • 2021-02-08
到目前為止, 我們已經介紹了兩種搜尋方式 : 順序搜尋和二分搜尋. 這兩種搜尋方式分別針對不同的資料架構. 接下來, 我們要介紹第一種有序的資料結構 : 跳躍列表 (Skip List), 它能夠提到…
大家對於像素畫應該都不陌生, 它是一個 m 行 n 列的像素矩陣. 在二值圖像中, 每一個像素或為黑色或為白色. 也就是說, 在 C++ 中, 我們可以使用布林型別來表示每一個像素. 0 表示黑色, …
迷宮是一個矩形區域, 左上角為迷宮的入口, 右下角為迷宮的出口 迷宮內部包含不可穿越的障礙物, 這些障礙物和迷宮的邊界平行  老鼠從入口進入迷宮, 尋找一條可行路徑使得老鼠可以從迷宮中走出, 要求…
一列貨運列車有 n 節車廂, 第 i 節車廂停靠在第 i 個站點. 假設列車在裝載的時候, 不一定按照順序進行裝載, 即車廂的編號不一定有序. 在列車到達終點站之前需要經過一個緩衝站點. 當列車駛出緩…
在資料結構中, 線型的結構使用得比較多的是動態陣列, 也就是我們所說的 vector. 其次, 除了 vector 之外, 用得最多的也許就是堆疊和佇列. 今天來說一下堆疊的三個應用 一、括號匹配 在…

關注我們的微信官方帳號

微信官方帳號