Hello 算法 1.2.0 繁体中文 TypeScript 版然而,由於鏈結串列節點需要額外儲存指標,因此鏈結串列節點佔用的空間相對較大。 綜上,我們不能簡單地確定哪種實現更加節省記憶體,需要針對具體情況進行分析。 5.1.4 堆疊的典型應用 ‧ 瀏覽器中的後退與前進、軟體中的撤銷與反撤銷。每當我們開啟新的網頁,瀏覽器就會對上一個網頁執 行入堆疊,這樣我們就可以通過後退操作回到上一個網頁。後退操作實際上是在執行出堆疊。如果要同 時支持後退和前進,那麼需要兩個堆疊來配合實現。 雙向佇列兼具堆疊與佇列的邏輯,因此它可以實現這兩者的所有應用場景,同時提供更高的自由度。 我們知道,軟體的“撤銷”功能通常使用堆疊來實現:系統將每次更改操作 push 到堆疊中,然後透過 pop 實 現撤銷。然而,考慮到系統資源的限制,軟體通常會限制撤銷的步數(例如僅允許儲存 50 步)。當堆疊的長 度超過 50 時,軟體需要在堆疊底(佇列首)執行刪除操作。但堆疊無法實現該功能,此時就需要使用雙向佇 列來 有序資料。然而,我們通常會使用一種更優雅的方式實現堆積排序,詳見“堆積排序”章節。 ‧ 獲取最大的 ? 個元素:這是一個經典的演算法問題,同時也是一種典型應用,例如選擇熱度前 10 的新 聞作為微博熱搜,選取銷量前 10 的商品等。 8.2 建堆積操作 在某些情況下,我們希望使用一個串列的所有元素來構建一個堆積,這個過程被稱為“建堆積操作”。 8.2.1 藉助入堆積操作實現 我們首先建0 码力 | 384 页 | 18.80 MB | 10 月前3
 Hello 算法 1.0.0b1 TypeScript 版。当然,堆排序一 般无需弹出元素,仅需每轮将堆顶元素交换至数组尾部并减小堆的长度即可。 ‧ 获取最大的 ? 个元素。这既是一道经典算法题目,也是一种常见应用,例如选取热度前 10 的新闻作为 微博热搜,选取前 10 销量的商品等。 8.2. 建堆操作 * 如果我们想要根据输入列表来生成一个堆,这样的操作被称为「建堆」。 8.2.1. 两种建堆方法 借助入堆方法实现 最直接地,考虑借 Undirected Graph」和「有向图 Directed Graph」。 ‧ 在无向图中,边表示两顶点之间“双向”的连接关系,例如微信或 QQ 中的“好友关系”; ‧ 在有向图中,边是有方向的,即 ? → ? 和 ? ← ? 两个方向的边是相互独立的,例如微博或抖音上的 “关注”与“被关注”关系; 9. 图 hello‑algo.com 133 Figure 9‑2. 有向图与无向图0 码力 | 186 页 | 14.71 MB | 1 年前3
 Hello 算法 1.1.0 TypeScript版到有序数 据。然而,我们通常会使用一种更优雅的方式实现堆排序,详见“堆排序”章节。 ‧ 获取最大的 ? 个元素:这是一个经典的算法问题,同时也是一种典型应用,例如选择热度前 10 的新闻 作为微博热搜,选取销量前 10 的商品等。 8.2 建堆操作 在某些情况下,我们希望使用一个列表的所有元素来构建一个堆,这个过程被称为“建堆操作”。 8.2.1 借助入堆操作实现 我们首先创建一个空 graph)和有向图(directed graph),如图 9‑2 所示。 ‧ 在无向图中,边表示两顶点之间的“双向”连接关系,例如微信或 QQ 中的“好友关系”。 ‧ 在有向图中,边具有方向性,即 ? → ? 和 ? ← ? 两个方向的边是相互独立的,例如微博或抖音上 的“关注”与“被关注”关系。 第 9 章 图 hello‑algo.com 189 图 9‑2 有向图与无向图 根据0 码力 | 383 页 | 18.49 MB | 1 年前3
 Hello 算法 1.0.0b5 TypeScript 版有序数 据。然而,我们通常会使用一种更优雅的方式实现堆排序,详见后续的堆排序章节。 ‧ 获取最大的 ? 个元素:这是一个经典的算法问题,同时也是一种典型应用,例如选择热度前 10 的新闻 作为微博热搜,选取销量前 10 的商品等。 8.2 建堆操作 在某些情况下,我们希望使用一个列表的所有元素来构建一个堆,这个过程被称为“建堆操作”。 8.2.1 自上而下构建 我们首先创建一个空堆, undirected graph」和「有向图 directed graph」。 ‧ 在无向图中,边表示两顶点之间的“双向”连接关系,例如微信或 QQ 中的“好友关系”。 ‧ 在有向图中,边具有方向性,即 ? → ? 和 ? ← ? 两个方向的边是相互独立的,例如微博或抖音上 的“关注”与“被关注”关系。 第 9 章 图 hello‑algo.com 184 图 9‑2 有向图与无向图 根据所有顶点是否连通,可分为图0 码力 | 378 页 | 30.70 MB | 1 年前3
 Hello 算法 1.2.0 简体中文 TypeScript 版到有序数 据。然而,我们通常会使用一种更优雅的方式实现堆排序,详见“堆排序”章节。 ‧ 获取最大的 ? 个元素:这是一个经典的算法问题,同时也是一种典型应用,例如选择热度前 10 的新闻 作为微博热搜,选取销量前 10 的商品等。 8.2 建堆操作 在某些情况下,我们希望使用一个列表的所有元素来构建一个堆,这个过程被称为“建堆操作”。 8.2.1 借助入堆操作实现 我们首先创建一个空 graph)和有向图(directed graph),如图 9‑2 所示。 ‧ 在无向图中,边表示两顶点之间的“双向”连接关系,例如微信或 QQ 中的“好友关系”。 ‧ 在有向图中,边具有方向性,即 ? → ? 和 ? ← ? 两个方向的边是相互独立的,例如微博或抖音上 的“关注”与“被关注”关系。 第 9 章 图 www.hello‑algo.com 189 图 9‑2 有向图与无向图0 码力 | 383 页 | 18.49 MB | 10 月前3
 TypeScript 4.0 使用手册
一大波新的快速开始指南:React,Angular,Nodejs,ASP.NET Core,React Native, Vue,Glimmer,WeChat,Dojo2,Knockout等 如果觉得不错可以微信打赏哟 <3 TypeScript README - 7 - 本文档使用 书栈网 · BookStack.CN 构建 快速上手 5分钟了解TypeScript ASP.NET Core0 码力 | 683 页 | 6.27 MB | 1 年前3
共 6 条
- 1
 













