Rust 语言学习笔记Rust 类型系统.............................................................................. 21 2.4.1 可变性 .............................................................................. 21 2.4.2 原生类型.... 1 泛型参数约束...................................................................... 48 4.3.2 trait 与内置类型 ................................................................... 49 4.3.3 trait 默认实现......... 6.5.4 综合例子 ............................................................................ 86 6.6 类型系统中常见的 trait .................................................................. 87 6.6.1 From,Into,Cow0 码力 | 117 页 | 2.24 MB | 1 年前3
Rust 程序设计语言 简体中文版 1.85.0. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 3.2. 数据类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 4.3. Slice 类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188 10.1. 泛型数据类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .0 码力 | 562 页 | 3.23 MB | 1 月前3
Rust 程序设计语言简体中文版........................................................................................ 43 3.2. 数据类型 .................................................................................................. .................................................................................... 84 4.3. Slice 类型 .................................................................................................. ................................................................................... 204 10.1. 泛型数据类型 ..................................................................................................0 码力 | 600 页 | 12.99 MB | 1 年前3
Comprehensive Rust(简体中文) 202412. 23 4.3 Playground . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 5 类型和值 25 5.1 Hello, World . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 5.2 26 5.4 算术 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 5.5 类型推导 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 5.6 练习:Fibonacci . 46 9.5.1 解答 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 10 用户定义的类型 48 10.1 结构体 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 10.20 码力 | 359 页 | 1.33 MB | 11 月前3
Hello 算法 1.2.0 简体中文 Rust 版3.1 数据结构分类 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 3.2 基本数据类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 3.3 数字编码 * . . . . 本书的主要内容如图 0‑1 所示。 ‧ 复杂度分析:数据结构和算法的评价维度与方法。时间复杂度和空间复杂度的推算方法、常见类型、示 例等。 ‧ 数据结构:基本数据类型和数据结构的分类方法。数组、链表、栈、队列、哈希表、树、堆、图等数据 结构的定义、优缺点、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:搜索、排序、分治、回溯、动态规划、贪心等算法的定义、优缺点、效率、应用场景、解题步骤 免歧义。 ‧ 当涉及编程语言之间不一致的名词时,本书均以 Python 为准,例如使用 None 来表示“空”。 ‧ 本书部分放弃了编程语言的注释规范,以换取更加紧凑的内容排版。注释主要分为三种类型:标题注 释、内容注释、多行注释。 第 0 章 前言 www.hello‑algo.com 5 /* 标题注释,用于标注函数、类、测试样例等 */ // 内容注释,用于详解代码 /** *0 码力 | 387 页 | 18.51 MB | 10 月前3
Hello 算法 1.1.0 Rust版3.1 数据结构分类 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 3.2 基本数据类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 3.3 数字编码 * . . . . 本书的主要内容如图 0‑1 所示。 ‧ 复杂度分析:数据结构和算法的评价维度与方法。时间复杂度和空间复杂度的推算方法、常见类型、示 例等。 ‧ 数据结构:基本数据类型和数据结构的分类方法。数组、链表、栈、队列、哈希表、树、堆、图等数据 结构的定义、优缺点、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:搜索、排序、分治、回溯、动态规划、贪心等算法的定义、优缺点、效率、应用场景、解题步骤 免歧义。 ‧ 当涉及编程语言之间不一致的名词时,本书均以 Python 为准,例如使用 None 来表示“空”。 ‧ 本书部分放弃了编程语言的注释规范,以换取更加紧凑的内容排版。注释主要分为三种类型:标题注 释、内容注释、多行注释。 第 0 章 前言 hello‑algo.com 5 /* 标题注释,用于标注函数、类、测试样例等 */ // 内容注释,用于详解代码 /** * 多行0 码力 | 388 页 | 18.50 MB | 1 年前3
Hello 算法 1.0.0 Rust版3.1 数据结构分类 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 3.2 基本数据类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 3.3 数字编码 * . . . . 本书的主要内容如图 0‑1 所示。 ‧ 复杂度分析:数据结构和算法的评价维度与方法。时间复杂度和空间复杂度的推算方法、常见类型、示 例等。 ‧ 数据结构:基本数据类型和数据结构的分类方法。数组、链表、栈、队列、哈希表、树、堆、图等数据 结构的定义、优缺点、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:搜索、排序、分治、回溯、动态规划、贪心等算法的定义、优缺点、效率、应用场景、解题步骤 加粗,这类文字值得特别关注。 ‧ 当涉及编程语言之间不一致的名词时,本书均以 Python 为准,例如使用 None 来表示“空”。 ‧ 本书部分放弃了编程语言的注释规范,以换取更加紧凑的内容排版。注释主要分为三种类型:标题注 释、内容注释、多行注释。 /* 标题注释,用于标注函数、类、测试样例等 */ // 内容注释,用于详解代码 /** * 多行 第 0 章 前言 hello‑algo.com 50 码力 | 383 页 | 17.61 MB | 1 年前3
Rust语言核心竞争力-庄晓立thread::spawn(move|| { tx.send(i).unwrap(); }); } 默认是Move,除非类型实现了Copy接口(POD) tx(类型是Sender)被move到新的线程; i(类型是i32)被copy到新的线程(逐字节拷贝)。 Ownership(所有权) Owns Owns 所有权转移 Move, Transfer Ownership .. // 必然得不到file } FILE* fopen(const char* name, const char* mode) C语言无法从类型系统上区分有效指针和无效指针(NULL),却又习惯把NULL指针用 作特殊标记(空缺的参数或返回值)。一旦程序员忽略NULL指针检查,往往会触发 很严重的内存错误。人难免因疏忽而犯错,编译期检查对此无能为力。 并发安全 一个入口:std::thread::spawn() () 两大门神:Send、Sync 编译期保证:没有数据竞争(No Data Race) Safe V.S. Unsafe // A unsafe { // B } // A Rust类型系统和编译器从机制上保证,unsafe 代码块以外的代码(A区),一定是内存安全的。 不能被编译器确认是内存安全的代码,必须且 只能写在unsafe代码块内(B区)。 尽量把unsafe代码块限制在最小范围内,并且0 码力 | 51 页 | 1.09 MB | 1 年前3
新一代分布式高性能图数据库的构建 - 沈游人支持在用户筛选出的子图上计算 灵活的参数设定 自研图计算系统架构、极致的性能优化 深度适应客户的系统环境和算法需求 • 机器数量有限,通常小于 10 • 网络带宽不高(千兆、万兆以太网) • 需要支持各种不同类型的图计算算法 双重执行模式 • 单机和分布式两套计算系统,在不同的使用 环境中都能达到最佳性能 针对常用算法逐个设计优化方案 • 对于常用算法,跳过固定的编程模型,分 别设计最佳的计算方案 别设计最佳的计算方案 • 例如我们自研的 node2vec 采样算法比现 有技术快了 1 个数量级 海致图计算平台特点 AtlasML 极致的性能 • 支持 CPU/GPU 等异构设备训练 • 特殊设计的高性能图算子库 丰富的算法库 • 内置多种 20+ 个 GNN 算法 • 支持同构图 / 异构图 / 属性图 客户的信任 • 上线某银行反欺诈场景 业务效果提升 10%+ 灵活易用的开发平台 在不带来性 能损失的同时也提高代码组织性 02 03 强大的跨平台能力,在不同架构 下可以准确的控制代码行为 编译期间对生命周期检查确保内 存安全,无 GC 和运行时损耗 01 完善的测试类型支持,包括单元 测试、集成测试、基准测试等 02 03 和文档系统以及 CI/CD 工具的良 好集成 完整的断言系统 异步协程 零成本抽象 强大的测试框架 REPL 命令行客户端 WebUI0 码力 | 38 页 | 24.68 MB | 1 年前3
Rust算法教程 The Algos (algorithms)数组(Array) 数组是⼀种聚合数据类型,它是将具有相同类型的若⼲变量有序地组织在⼀起的 集合。数组可以说是最基本的数据结构,在各种编程语⾔中都有对应。⼀个数组可以分解为 多个数组元素,按照数据元素的类型,数组可以分为整型数组、字符型数组、浮点型数组、 指针数组和结构数组等。数组还可以有⼀维、⼆维以及多维等表现形式。 2. 栈( Stack) 栈是⼀种特殊的线性表,它只能在⼀个表的⼀个固定端进⾏数据结点的插⼊和删 将被压⼊栈底,最后 插⼊的数据在栈顶,读出数据时,从栈顶开始逐个读出。栈在汇编语⾔程序中,经常⽤于重 要数据的现场保护。栈中没有数据时,称为空栈。 3. 队列(Queue) 队列和栈类似,也是⼀种特殊的线性表。和栈不同的是,队列只允许在表的⼀ 端进⾏插⼊操作,⽽在另⼀端进⾏删除操作。⼀般来说,进⾏插⼊操作的⼀端称为队尾,进 ⾏删除操作的⼀端称为队头。队列中没有元素时,称为空队列。 4. 链表( 图(Graph) 图是另⼀种⾮线性数据结构。在图结构中,数据结点⼀般称为顶点,⽽边是顶点 的有序偶对。如果两个顶点之间存在⼀条边,那么就表示这两个顶点具有相邻关系。 7.堆(Heap) 堆是⼀种特殊的树形数据结构,⼀般讨论的堆都是⼆叉堆。堆的特点是根结点的值是 所有结点中最⼩的或者最⼤的,并且根结点的两个⼦树也是⼀个堆结构。 8.散列表(Hash) 散列表源⾃于散列函数(Hash funct0 码力 | 270 页 | 8.46 MB | 1 年前3
共 25 条
- 1
- 2
- 3













