Debian 新維護人員手冊
main 之外的軟件包以完成編譯或 運行。 – 對於 non-free 類的軟件,其許可證可以不滿足 DFSG 中的一些條件,但至少 必須是可分發的。 – 如果你不清楚你的軟體應該分入哪一類,則把許可證文本發送到 debian-legal@lists.debian.org (http://lists.debian.org/- debian-legal/) 請他人提出意見。 • 程式 不能給 Debian 列中的一個:⁶ • Architecture: any – 一般而言,包含編譯型語言編寫的程序生成的二進制包依賴於具體的體繫結構。 • Architecture: all – 一般而言,包含文本、圖像、或解釋型語言腳本生成的二進制包獨立於體繫結構。 我們不管第 10 行,鑑於本程序是用 C 語言編寫的。dpkg-gencontrol(1) 命令將根據這個軟件包可以編譯的平臺而爲此 處填寫合適的信息。 在本章節中,只要不產生歧義,所有提及的 debian 目錄下的文件均會省去 debian/ 前綴以求簡潔方便。 還有一些 debhelper 的配置文件模板可能未被 dh_make 命令創建。在這種情況下如果你需要它們,則要使用文本編 輯器手工創建。 如果你希望或需要激活它們中的任意一個或多個,請按照下面的方法做: • 把配置文件的名稱改爲實際的二進制軟件包名,例如 package; • 修改模板文件來滿足你的需要; •0 码力 | 63 页 | 512.12 KB | 1 年前3Comprehensive Rust(繁体中文)
libcxx_test_bridge_code‘ 是 CXX 產生的 C++ 繫 結依附元件。下一張投影片將說明相關設定方法。 • 請注意,您也需要依賴 cxx-bridge-header 程式庫,才能提取常見的 CXX 定義。 • 如需介紹如何在 Android 中使用 CXX 的完整文件,請參閱 Android 說明文件。您可以與全班分 享該連結,這樣學生就知道以後能在哪裡找到這些說明。 37.2 範圍:程式的區域,位於其中的變數皆有效且可供使用。 • 標準程式庫:提供 Rust 必要功能的一系列模組。 • static:Rust 中的關鍵字,可定義靜態變數或具有'static‘ 生命週期的項目。 • 字串:儲存文本資料的資料型別。詳情請參閱比較 String 與 str 的相關課程。 • 結構體:Rust 中的複合資料型別,能以一個名稱將不同型別的變數歸入同一組。 • 測試:Rust 模組,其中的函式可測試其他函式的正確性。0 码力 | 358 页 | 1.41 MB | 10 月前3Hello 算法 1.2.0 繁体中文 C# 版
,請返回陣列中最大的 ? 個元素。 對於該問題,我們先介紹兩種思路比較直接的解法,再介紹效率更高的堆積解法。 8.3.1 方法一:走訪選擇 我們可以進行圖 8‑6 所示的 ? 輪走訪,分別在每輪中提取第 1、2、…、? 大的元素,時間複雜度為 ?(??) 。 此方法只適用於 ? ≪ ? 的情況,因為當 ? 與 ? 比較接近時,其時間複雜度趨向於 ?(?2) ,非常耗時。 圖 8‑6 走訪尋找最大的 hello‑algo.com 242 圖 11‑12 堆積排序步驟 在程式碼實現中,我們使用了與“堆積”章節相同的從頂至底堆積化 sift_down() 函式。值得注意的是,由 於堆積的長度會隨著提取最大元素而減小,因此我們需要給 sift_down() 函式新增一個長度參數 ? ,用於指 定堆積的當前有效長度。程式碼如下所示: // === File: heap_sort.cs === /* 建堆積操作:堆積化除葉節點以外的其他所有節點 for (int i = nums.Length / 2 - 1; i >= 0; i--) { SiftDown(nums, nums.Length, i); } // 從堆積中提取最大元素,迴圈 n-1 輪 for (int i = nums.Length - 1; i > 0; i--) { // 交換根節點與最右葉節點(交換首元素與尾元素) (nums[i], nums[0])0 码力 | 379 页 | 18.79 MB | 10 月前3Hello 算法 1.2.0 繁体中文 Dart 版
,請返回陣列中最大的 ? 個元素。 對於該問題,我們先介紹兩種思路比較直接的解法,再介紹效率更高的堆積解法。 8.3.1 方法一:走訪選擇 我們可以進行圖 8‑6 所示的 ? 輪走訪,分別在每輪中提取第 1、2、…、? 大的元素,時間複雜度為 ?(??) 。 此方法只適用於 ? ≪ ? 的情況,因為當 ? 與 ? 比較接近時,其時間複雜度趨向於 ?(?2) ,非常耗時。 圖 8‑6 走訪尋找最大的 hello‑algo.com 242 圖 11‑12 堆積排序步驟 在程式碼實現中,我們使用了與“堆積”章節相同的從頂至底堆積化 sift_down() 函式。值得注意的是,由 於堆積的長度會隨著提取最大元素而減小,因此我們需要給 sift_down() 函式新增一個長度參數 ? ,用於指 定堆積的當前有效長度。程式碼如下所示: // === File: heap_sort.dart === 建堆積操作:堆積化除葉節點以外的其他所有節點 for (int i = nums.length ~/ 2 - 1; i >= 0; i--) { siftDown(nums, nums.length, i); } // 從堆積中提取最大元素,迴圈 n-1 輪 for (int i = nums.length - 1; i > 0; i--) { // 交換根節點與最右葉節點(交換首元素與尾元素) int tmp = nums[0];0 码力 | 378 页 | 18.77 MB | 10 月前3Hello 算法 1.2.0 繁体中文 Go 版
,請返回陣列中最大的 ? 個元素。 對於該問題,我們先介紹兩種思路比較直接的解法,再介紹效率更高的堆積解法。 8.3.1 方法一:走訪選擇 我們可以進行圖 8‑6 所示的 ? 輪走訪,分別在每輪中提取第 1、2、…、? 大的元素,時間複雜度為 ?(??) 。 此方法只適用於 ? ≪ ? 的情況,因為當 ? 與 ? 比較接近時,其時間複雜度趨向於 ?(?2) ,非常耗時。 圖 8‑6 走訪尋找最大的 hello‑algo.com 246 圖 11‑12 堆積排序步驟 在程式碼實現中,我們使用了與“堆積”章節相同的從頂至底堆積化 sift_down() 函式。值得注意的是,由 於堆積的長度會隨著提取最大元素而減小,因此我們需要給 sift_down() 函式新增一個長度參數 ? ,用於指 定堆積的當前有效長度。程式碼如下所示: 第 11 章 排序 www.hello‑algo.com 247 建堆積操作:堆積化除葉節點以外的其他所有節點 for i := len(*nums)/2 - 1; i >= 0; i-- { siftDown(nums, len(*nums), i) } // 從堆積中提取最大元素,迴圈 n-1 輪 for i := len(*nums) - 1; i > 0; i-- { // 交換根節點與最右葉節點(交換首元素與尾元素) (*nums)[0], (*nums)[i]0 码力 | 385 页 | 18.80 MB | 10 月前3Hello 算法 1.2.0 繁体中文 Kotlin 版
,請返回陣列中最大的 ? 個元素。 對於該問題,我們先介紹兩種思路比較直接的解法,再介紹效率更高的堆積解法。 8.3.1 方法一:走訪選擇 我們可以進行圖 8‑6 所示的 ? 輪走訪,分別在每輪中提取第 1、2、…、? 大的元素,時間複雜度為 ?(??) 。 此方法只適用於 ? ≪ ? 的情況,因為當 ? 與 ? 比較接近時,其時間複雜度趨向於 ?(?2) ,非常耗時。 第 8 章 堆積 www hello‑algo.com 244 圖 11‑12 堆積排序步驟 在程式碼實現中,我們使用了與“堆積”章節相同的從頂至底堆積化 sift_down() 函式。值得注意的是,由 於堆積的長度會隨著提取最大元素而減小,因此我們需要給 sift_down() 函式新增一個長度參數 ? ,用於指 定堆積的當前有效長度。程式碼如下所示: // === File: heap_sort.kt === /* 建堆積操作:堆積化除葉節點以外的其他所有節點 for (i in nums.size / 2 - 1 downTo 0) { siftDown(nums, nums.size, i) } // 從堆積中提取最大元素,迴圈 n-1 輪 for (i in nums.size - 1 downTo 1) { // 交換根節點與最右葉節點(交換首元素與尾元素) val temp = nums[0] nums[0]0 码力 | 382 页 | 18.79 MB | 10 月前3Hello 算法 1.2.0 繁体中文 Java 版
,請返回陣列中最大的 ? 個元素。 對於該問題,我們先介紹兩種思路比較直接的解法,再介紹效率更高的堆積解法。 8.3.1 方法一:走訪選擇 我們可以進行圖 8‑6 所示的 ? 輪走訪,分別在每輪中提取第 1、2、…、? 大的元素,時間複雜度為 ?(??) 。 此方法只適用於 ? ≪ ? 的情況,因為當 ? 與 ? 比較接近時,其時間複雜度趨向於 ?(?2) ,非常耗時。 圖 8‑6 走訪尋找最大的 hello‑algo.com 242 圖 11‑12 堆積排序步驟 在程式碼實現中,我們使用了與“堆積”章節相同的從頂至底堆積化 sift_down() 函式。值得注意的是,由 於堆積的長度會隨著提取最大元素而減小,因此我們需要給 sift_down() 函式新增一個長度參數 ? ,用於指 定堆積的當前有效長度。程式碼如下所示: // === File: heap_sort.java === 建堆積操作:堆積化除葉節點以外的其他所有節點 for (int i = nums.length / 2 - 1; i >= 0; i--) { siftDown(nums, nums.length, i); } // 從堆積中提取最大元素,迴圈 n-1 輪 for (int i = nums.length - 1; i > 0; i--) { // 交換根節點與最右葉節點(交換首元素與尾元素) int tmp = nums[0];0 码力 | 379 页 | 18.79 MB | 10 月前3Hello 算法 1.2.0 繁体中文 JavaScript 版
,請返回陣列中最大的 ? 個元素。 對於該問題,我們先介紹兩種思路比較直接的解法,再介紹效率更高的堆積解法。 8.3.1 方法一:走訪選擇 我們可以進行圖 8‑6 所示的 ? 輪走訪,分別在每輪中提取第 1、2、…、? 大的元素,時間複雜度為 ?(??) 。 此方法只適用於 ? ≪ ? 的情況,因為當 ? 與 ? 比較接近時,其時間複雜度趨向於 ?(?2) ,非常耗時。 圖 8‑6 走訪尋找最大的 hello‑algo.com 242 圖 11‑12 堆積排序步驟 在程式碼實現中,我們使用了與“堆積”章節相同的從頂至底堆積化 sift_down() 函式。值得注意的是,由 於堆積的長度會隨著提取最大元素而減小,因此我們需要給 sift_down() 函式新增一個長度參數 ? ,用於指 定堆積的當前有效長度。程式碼如下所示: 第 11 章 排序 www.hello‑algo.com 243 (let i = Math.floor(nums.length / 2) - 1; i >= 0; i--) { siftDown(nums, nums.length, i); } // 從堆積中提取最大元素,迴圈 n-1 輪 for (let i = nums.length - 1; i > 0; i--) { // 交換根節點與最右葉節點(交換首元素與尾元素) [nums[0], nums[i]]0 码力 | 379 页 | 18.78 MB | 10 月前3Hello 算法 1.2.0 繁体中文 TypeScript 版
,請返回陣列中最大的 ? 個元素。 對於該問題,我們先介紹兩種思路比較直接的解法,再介紹效率更高的堆積解法。 8.3.1 方法一:走訪選擇 我們可以進行圖 8‑6 所示的 ? 輪走訪,分別在每輪中提取第 1、2、…、? 大的元素,時間複雜度為 ?(??) 。 此方法只適用於 ? ≪ ? 的情況,因為當 ? 與 ? 比較接近時,其時間複雜度趨向於 ?(?2) ,非常耗時。 圖 8‑6 走訪尋找最大的 hello‑algo.com 245 圖 11‑12 堆積排序步驟 在程式碼實現中,我們使用了與“堆積”章節相同的從頂至底堆積化 sift_down() 函式。值得注意的是,由 於堆積的長度會隨著提取最大元素而減小,因此我們需要給 sift_down() 函式新增一個長度參數 ? ,用於指 定堆積的當前有效長度。程式碼如下所示: // === File: heap_sort.ts === /* (let i = Math.floor(nums.length / 2) - 1; i >= 0; i--) { siftDown(nums, nums.length, i); } // 從堆積中提取最大元素,迴圈 n-1 輪 for (let i = nums.length - 1; i > 0; i--) { // 交換根節點與最右葉節點(交換首元素與尾元素) [nums[0], nums[i]]0 码力 | 384 页 | 18.80 MB | 10 月前3Hello 算法 1.2.0 繁体中文 Swift 版
,請返回陣列中最大的 ? 個元素。 對於該問題,我們先介紹兩種思路比較直接的解法,再介紹效率更高的堆積解法。 8.3.1 方法一:走訪選擇 我們可以進行圖 8‑6 所示的 ? 輪走訪,分別在每輪中提取第 1、2、…、? 大的元素,時間複雜度為 ?(??) 。 此方法只適用於 ? ≪ ? 的情況,因為當 ? 與 ? 比較接近時,其時間複雜度趨向於 ?(?2) ,非常耗時。 第 8 章 堆積 www hello‑algo.com 243 圖 11‑12 堆積排序步驟 在程式碼實現中,我們使用了與“堆積”章節相同的從頂至底堆積化 sift_down() 函式。值得注意的是,由 於堆積的長度會隨著提取最大元素而減小,因此我們需要給 sift_down() 函式新增一個長度參數 ? ,用於指 定堆積的當前有效長度。程式碼如下所示: // === File: heap_sort.swift === stride(from: nums.count / 2 - 1, through: 0, by: -1) { siftDown(nums: &nums, n: nums.count, i: i) } // 從堆積中提取最大元素,迴圈 n-1 輪 for i in nums.indices.dropFirst().reversed() { // 交換根節點與最右葉節點(交換首元素與尾元素) nums.swapAt(00 码力 | 379 页 | 18.79 MB | 10 月前3
共 15 条
- 1
- 2