Comprehensive Rust(日语) 20241213 1.1 講座の構成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 1.2 キーボードショートカット . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 1.3 翻訳 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 2.2 講座のサンプルコード . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.3 Cargo を使ってローカルで実行 . . . . . . . . . . . . . . . . . . . . . . . . . . 1 Rust とは? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 4.2 Rust のメリット . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 4.3 プレイグラウンド . . . . . . .0 码力 | 381 页 | 1.36 MB | 10 月前3
Hello 算法 1.2.0 繁体中文 Rust 版. . . . . . . . . . . . 376 1 第 0 章 前言 Abstract 演算法猶如美妙的交響樂,每一行程式碼都像韻律般流淌。 願這本書在你的腦海中輕輕響起,留下獨特而深刻的旋律。 第 0 章 前言 www.hello‑algo.com 2 0.1 關於本書 本專案旨在建立一本開源、免費、對新手友好的資料結構與演算法入門教程。 ‧ 全書採用動畫圖解,內容清 有限,可以先跳過。 ‧ 專業術語會使用黑體(紙質版和 PDF 版)或新增下劃線(網頁版),例如陣列(array)。建議記住它們, 以便閱讀文獻。 ‧ 重點內容和總結性語句會 加粗,這類文字值得特別關注。 ‧ 有特指含義的詞句會使用“引號”標註,以避免歧義。 ‧ 當涉及程式語言之間不一致的名詞時,本書均以 Python 為準,例如使用 None 來表示“空”。 ‧ 本書部分放棄了程式語言 享你的見解,幫助他人進步。 圖 0‑7 評論區示例 0.2.5 演算法學習路線 從總體上看,我們可以將學習資料結構與演算法的過程劃分為三個階段。 1. 階段一:演算法入門。我們需要熟悉各種資料結構的特點和用法,學習不同演算法的原理、流程、用途 和效率等方面的內容。 2. 階段二:刷演算法題。建議從熱門題目開刷,先積累至少 100 道題目,熟悉主流的演算法問題。初次刷 題時,“知識遺忘”可能是0 码力 | 388 页 | 18.82 MB | 10 月前3
Rust 在算法交易中的实际应用与积极效应自建超算中心 徐州 新加坡/美国 海外 研发中心 Rust 在非凸算法交易服务中的全栈应用实践 内 部 智 能 引 擎 行情服务 总控模块 预测模型 策略模块 数据总线 智 能 特 征 工 程 去量纲:标准化、归一化 缺失值处理:样条插值 降维:PCA A I 信 号 生 成 LSTM 神经网络 BP 全连接网络 XGBoost 集成学习模型 定制早停函数 原 始 高 XSHM Rust 全栈应用实践 - 行情、与API接入 Rust 在非凸算法交易服务中的全栈应用实践 内 部 智 能 引 擎 行情服务 总控模块 预测模型 策略模块 数据总线 智 能 特 征 工 程 去量纲:标准化、归一化 缺失值处理:样条插值 降维:PCA A I 信 号 生 成 LSTM 神经网络 BP 全连接网络 XGBoost 集成学习模型 定制早停函数 原 始 高 组播 Rust 全栈应用实践 - 行情、与API接入 Rust 在非凸算法交易服务中的全栈应用实践 内 部 智 能 引 擎 行情服务 总控模块 预测模型 策略模块 数据总线 智 能 特 征 工 程 去量纲:标准化、归一化 缺失值处理:样条插值 降维:PCA A I 信 号 生 成 LSTM 神经网络 BP 全连接网络 XGBoost 集成学习模型 定制早停函数 原 始 高0 码力 | 18 页 | 3.49 MB | 1 年前3
Comprehensive Rust(繁体中文)• 提供高度主控權。 • 可縮減到十分受限的裝置規模,例如微控制器。 • 沒有執行階段,也不使用垃圾收集機制。 • 著重可靠性和安全性,但不犧牲效能。 4.2 Rust 的優點 Rust 的幾個獨特賣點如下: 22 • 「編譯期的記憶體安全性」- 在編譯期間就能避免各類記憶體錯誤 – 不會產生未初始化的變數。 – 不會導致重複釋放記憶體。 – 不會使用已釋放的記憶體。 – 不會產生 NULL 學員準備休息時,請鼓勵他們開啟 Playground 略微試驗一下。在剩餘的課堂時間,建議他們持續開啟 Playground 分頁嘗試操作。如果學生程度較高,想進一步瞭解 Rust 的最佳化作業或產生的組語,就特別 適合採用這個授課方式。 23 第 5 部分 型別和值 This segment should take about 45 minutes. It contains: Slide Duration the match arm. 58 A match guard causes the arm to match only if the condition is true. 重點: • 建議您特別指出某些特定字元在模式中的使用方式 – | 可做為 or – .. 可以視需要展開 – 1..=5 代表含頭尾的範圍 – _ 是萬用字元 • 有些概念比模式本身所允許的更加複雜,如果我們希望簡要地表達這些想法,就必須把配對守衛視0 码力 | 358 页 | 1.41 MB | 10 月前3
Comprehensive Rust(繁体中文) 202406• 提供高度主控權。 • 可縮減到十分受限的裝置規模,例如微控制器。 • 沒有執行階段,也不使用垃圾收集機制。 • 著重可靠性和安全性,但不犧牲效能。 4.2 Rust 的優點 Rust 的幾個獨特賣點如下: 21 • 「編譯期的記憶體安全性」- 在編譯期間就能避免各類記憶體錯誤 – 不會產生未初始化的變數。 – 不會導致重複釋放記憶體。 – 不會使用已釋放的記憶體。 – 不會產生 NULL 學員準備休息時,請鼓勵他們開啟 Playground 略微試驗一下。在剩餘的課堂時間,建議他們持續開啟 Playground 分頁嘗試操作。如果學生程度較高,想進一步瞭解 Rust 的最佳化作業或產生的組語,就特別 適合採用這個授課方式。 22 第 5 部分 型別和值 This segment should take about 45 minutes. It contains: Slide Duration the match arm. 56 A match guard causes the arm to match only if the condition is true. 重點: • 建議您特別指出某些特定字元在模式中的使用方式 – | 可做為 or – .. 可以視需要展開 – 1..=5 代表含頭尾的範圍 – _ 是萬用字元 • 有些概念比模式本身所允許的更加複雜,如果我們希望簡要地表達這些想法,就必須把配對守衛視0 码力 | 356 页 | 1.41 MB | 1 年前3
Rust 程序设计语言简体中文版时就打下坚实的基础。 关键字 Rust 语言有一组保留的 关键字(keywords),就像大部分语言一样,它们只能由语言 本身使用。记住,你不能使用这些关键字作为变量或函数的名称。大部分关键字有特 殊的意义,你将在 Rust 程序中使用它们完成各种任务;一些关键字目前没有相应的 功能,是为将来可能添加的功能保留的。可以在附录 A 中找到关键字的列表。 42/600 Rust 程序设计语言 简体中文版 函数有一个参数 list ,它代表会传递给函数的任何具体的 i32 值的 slice。函数定 义中的 list 代表任何 &[i32] 。当调用 largest 函数时,其代码实际上运行于我们传递的特 定值上。 总的来说,从示例 10-2 到示例 10-3 中涉及的机制经历了如下几步: 1. 找出重复代码。 2. 将重复代码提取到了一个函数中,并在函数签名中指定了代码中的输入和返回值。 3. 将重复代码的两个实例,改为调用函数。 信息,在这个例子中是 Guess value must be less than or equal to 100, got 200. 。 expected 信息的选择取决于 panic 信息有多独 特或动态,和你希望测试有多准确。在这个例子中,错误信息的子字符串足以确保函数在 else if value > 100 的情况下运行。 为了观察带有 expected 信息的 should_panic0 码力 | 600 页 | 12.99 MB | 1 年前3
Hello 算法 1.1.0 Rust版景做出恰当选择。 2. Q & A Q:数组存储在栈上和存储在堆上,对时间效率和空间效率是否有影响? 存储在栈上和堆上的数组都被存储在连续内存空间内,数据操作效率基本一致。然而,栈和堆具有各自的特 点,从而导致以下不同点。 1. 分配和释放效率:栈是一块较小的内存,分配由编译器自动完成;而堆内存相对更大,可以在代码中动 态分配,更容易碎片化。因此,堆上的分配和释放操作通常比栈上的慢。 2 于扩容是低频操作,因此平均效率更高。 ‧ 基于链表实现的栈可以提供更加稳定的效率表现。 空间效率 在初始化列表时,系统会为列表分配“初始容量”,该容量可能超出实际需求;并且,扩容机制通常是按照特 定倍率(例如 2 倍)进行扩容的,扩容后的容量也可能超出实际需求。因此,基于数组实现的栈可能造成一 定的空间浪费。 然而,由于链表节点需要额外存储指针,因此链表节点占用的空间相对较大。 综上 都需要进行多个步骤的节点操作。 Q:为什么 DFS 遍历二叉树有前、中、后三种顺序,分别有什么用呢? 与顺序和逆序遍历数组类似,前序、中序、后序遍历是三种二叉树遍历方法,我们可以使用它们得到一个特 定顺序的遍历结果。例如在二叉搜索树中,由于节点大小满足 左子节点值 < 根节点值 < 右子节点值 ,因此 我们只要按照“左 → 根 → 右”的优先级遍历树,就可以获得有序的节点序列。 Q:右旋操作是处理失衡节点0 码力 | 388 页 | 18.50 MB | 1 年前3
Hello 算法 1.2.0 简体中文 Rust 版景做出恰当选择。 2. Q & A Q:数组存储在栈上和存储在堆上,对时间效率和空间效率是否有影响? 存储在栈上和堆上的数组都被存储在连续内存空间内,数据操作效率基本一致。然而,栈和堆具有各自的特 点,从而导致以下不同点。 1. 分配和释放效率:栈是一块较小的内存,分配由编译器自动完成;而堆内存相对更大,可以在代码中动 态分配,更容易碎片化。因此,堆上的分配和释放操作通常比栈上的慢。 2 于扩容是低频操作,因此平均效率更高。 ‧ 基于链表实现的栈可以提供更加稳定的效率表现。 空间效率 在初始化列表时,系统会为列表分配“初始容量”,该容量可能超出实际需求;并且,扩容机制通常是按照特 定倍率(例如 2 倍)进行扩容的,扩容后的容量也可能超出实际需求。因此,基于数组实现的栈可能造成一 定的空间浪费。 然而,由于链表节点需要额外存储指针,因此链表节点占用的空间相对较大。 综上 hello‑algo.com 177 Q:为什么 DFS 遍历二叉树有前、中、后三种顺序,分别有什么用呢? 与顺序和逆序遍历数组类似,前序、中序、后序遍历是三种二叉树遍历方法,我们可以使用它们得到一个特 定顺序的遍历结果。例如在二叉搜索树中,由于节点大小满足 左子节点值 < 根节点值 < 右子节点值 ,因此 我们只要按照“左 → 根 → 右”的优先级遍历树,就可以获得有序的节点序列。 Q:右旋操作是处理失衡节点0 码力 | 387 页 | 18.51 MB | 10 月前3
Hello 算法 1.0.0 Rust版景做出恰当选择。 2. Q & A Q:数组存储在栈上和存储在堆上,对时间效率和空间效率是否有影响? 存储在栈上和堆上的数组都被存储在连续内存空间内,数据操作效率基本一致。然而,栈和堆具有各自的特 点,从而导致以下不同点。 1. 分配和释放效率:栈是一块较小的内存,分配由编译器自动完成;而堆内存相对更大,可以在代码中动 态分配,更容易碎片化。因此,堆上的分配和释放操作通常比栈上的慢。 2 栈与队列 hello‑algo.com 97 ‧ 基于链表实现的栈可以提供更加稳定的效率表现。 空间效率 在初始化列表时,系统会为列表分配“初始容量”,该容量可能超出实际需求;并且,扩容机制通常是按照特 定倍率(例如 2 倍)进行扩容的,扩容后的容量也可能超出实际需求。因此,基于数组实现的栈可能造成一 定的空间浪费。 然而,由于链表节点需要额外存储指针,因此链表节点占用的空间相对较大。 综上 都需要进行多个步骤的节点操作。 Q:为什么 DFS 遍历二叉树有前、中、后三种顺序,分别有什么用呢? 与顺序和逆序遍历数组类似,前序、中序、后序遍历是三种二叉树遍历方法,我们可以使用它们得到一个特 定顺序的遍历结果。例如在二叉搜索树中,由于节点大小满足 左子节点值 < 根节点值 < 右子节点值 ,因此 我们只要按照“左 → 根 → 右”的优先级遍历树,就可以获得有序的节点序列。 Q:右旋操作是处理失衡节点0 码力 | 383 页 | 17.61 MB | 1 年前3
Rust 语言学习笔记后把新内存区域和这个标识符做绑定。 哪些情况下我们自定义的类型(如某个 Struct 等)可以实现 Copy 特性? 只 要这种类型的属性类型都实现了 Copy 特性,那么这个类型就可以实现 Copy 特 性。 例如: struct Foo { //可实现 Copy 特性 a: i32, b: bool, } struct Bar { //不可实现 Copy 特性0 码力 | 117 页 | 2.24 MB | 1 年前3
共 11 条
- 1
- 2













