Hello 算法 1.1.0 Rust版
Hello 算法 Rust 语言版 作者:靳宇栋(@krahets) 代码审阅:伍志豪(@night‑cruise) Release 1.1.0 2024‑04‑15 序 两年前,我在力扣上分享了“剑指 Offer”系列题解,受到了许多读者的鼓励和支持。在与读者交流期间,我 最常被问的一个问题是“如何入门算法”。逐渐地,我对这个问题产生了浓厚的兴趣。 两眼一抹黑地刷题似乎是最受欢迎的 力,啃厚重的书往往变成了一项艰巨的挑战。 如果你也面临类似的困扰,那么很幸运这本书“找”到了你。本书是我对这个问题给出的答案,即使不是最 优解,也至少是一次积极的尝试。本书虽然不足以让你直接拿到 Offer,但会引导你探索数据结构与算法的 “知识地图”,带你了解不同“地雷”的形状、大小和分布位置,让你掌握各种“排雷方法”。有了这些本领, 相信你可以更加自如地刷题和阅读文献,逐步构建起完整的知识体系。 我深深赞同费曼教授所言:“Knowledge 网页版以获得更优的阅读体验。 推荐语 “一本通俗易懂的数据结构与算法入门书,引导读者手脑并用地学习,强烈推荐算法初学者阅读!” ——邓俊辉,清华大学计算机系教授 “如果我当年学数据结构与算法的时候有《Hello 算法》,学起来应该会简单 10 倍!” ——李沐,亚马逊资深首席科学家 计算机的出现给世界带来了巨大变革,它凭借高速的计算能力和出色的可编程性,成为了执行算法与处理数 据的理想媒介。无论是电子游戏的逼真画面、自动驾驶的智能决策,还是0 码力 | 388 页 | 18.50 MB | 1 年前3Rust算法教程 The Algos (algorithms)
2024/3/7 20:44 Rust算法教程 The Algos (algorithms) https://algo.course.rs/print.html 1/270 Algos算法教程 Rust作为⼀⻔现代化的系统编程语⾔,拥有与C/C++类似的性能,同时⼜能做⾮常底层的性能优 化,因此⾮常适合写算法和leetcode。 Algos 算法教程涵盖了各种常⽤算法和数据结构的代码实现,以及leetcode题解,同时对于相关算 法还提供了中⽂⽂档和注释,可以帮助⼤家更好、更快的学习。 关于算法 算法,⼀个⾼⼤上的词汇,在计算机领域也绝对是凡⼈的禁忌,但是其实算法⼜没那么神秘,我们 在写代码时,⽆时⽆刻都在与算法打交道,只是绝⼤部分算法我们⽆法感知到⽽已,因为这些算法 已经很好的被包装在其它库中,我们只需要输⼊数据然后调⽤它获得输出数据即可,因此这就引出 了算法的基本定义: 计算机算法是以⼀步接⼀步的⽅式来详细描述计算机如何将输⼊转化为所要求的输出的过程,或者 化为所要求的输出的过程,或者 说,算法是对计算机上执⾏的计算过程的具体描述。(以上内容摘抄⾃百度百科),简单点说计算 机算法就是将输⼊转化为所要求的输出过程。 既然只要调⽤别⼈的算法库即可完成任务,我们为什么要学习算法呢?原因很简单:⾯试需要。哈 哈,开个玩笑,当然⾯试很重要,但是提升⾃⼰的能⼒也很重要,学习算法往往能提升我们对于代 码的深层次理解和认识,你会知道为何要优化代码,该如何优化代码,甚⾄在真的需要你⼿撸算法0 码力 | 270 页 | 8.46 MB | 1 年前3Hello 算法 1.0.0 Rust版
Hello 算法 Rust 语言版 作者:靳宇栋(@krahets) 代码审阅:伍志豪(@night‑cruise) Release 1.0.0 2024‑02‑09 序 两年前,我在力扣上分享了“剑指 Offer”系列题解,受到了许多读者的鼓励和支持。在与读者交流期间,我 最常被问的一个问题是“如何入门算法”。逐渐地,我对这个问题产生了浓厚的兴趣。 两眼一抹黑地刷题似乎是最受欢迎的 力,啃厚重的书往往变成了一项艰巨的挑战。 如果你也面临类似的困扰,那么很幸运这本书“找”到了你。本书是我对这个问题给出的答案,即使不是最 优解,也至少是一次积极的尝试。本书虽然不足以让你直接拿到 Offer,但会引导你探索数据结构与算法的 “知识地图”,带你了解不同“地雷”的形状、大小和分布位置,让你掌握各种“排雷方法”。有了这些本领, 相信你可以更加自如地刷题和阅读文献,逐步构建起完整的知识体系。 我深深赞同费曼教授所言:“Knowledge 内的 展示效果受限,可访问 hello‑algo.com 网页版以获得更优的阅读体验。 推荐语 “一本通俗易懂的数据结构与算法入门书,引导读者手脑并用地学习,强烈推荐算法初学者阅读!” ——邓俊辉,清华大学计算机系教授 “如果我当年学数据结构与算法的时候有《Hello 算法》,学起来应该会简单 10 倍!” ——李沐,亚马逊资深首席科学家 i 目 录 第 0 章 前言 1 0.1 关于本书0 码力 | 383 页 | 17.61 MB | 1 年前3Rust与算法 - 谢波
第三届中国 Rust 开发者大会 Rust 与 算法 谢波 …………………………………………………………………………. …………………………………………………………………………… ...... …………………………………………………………………………… ……………… …………………………………………………………………………… ………………………. …………………………………………………………………………… …………………………………………………………………………… …………………………….. 1 6 11 15 21 • 背景介绍 • 算法相关知识 • Rust 实现数据结构 • Rust 实现算法 • 总结及学习资源 背景介绍 • 个人信息 • 写作动机 • 可参考点 • 为什么 背景介绍 # 个人职业 # 与 Rust 结缘 # 前 GPT 时代作品 个人信息 结算及大数据系统研发工程师 的留给时间检验。不懂就学,技术写作更像一种共创, 要反复总结和修改 ( 费曼学习法 ) 。 写作本书给我的启示 基础、排序、查找、树、图 代码框、颜色、图片绘制均由 Latex 完成 可参考点 为什么 为什么讲这个话题? 为什么要讲数据结构和算法两部分? 算法相关知识 算法相关知识 • 抽象数据类型 • 时空复杂度 • 复杂度计算 • 基本数据结构复杂度 抽象数据类型 什么是抽象数据类型?0 码力 | 28 页 | 3.52 MB | 1 年前3Hello 算法 1.2.0 简体中文 Rust 版
Hello 算法 Rust 语言版 作者:靳宇栋(@krahets) 代码审阅:伍志豪(@night‑cruise)、荣怡(@rongyi) Release 1.2.0 2024‑12‑06 序 两年前,我在力扣上分享了“剑指 Offer”系列题解,受到了许多读者的鼓励和支持。在与读者交流期间,我 最常被问的一个问题是“如何入门算法”。逐渐地,我对这个问题产生了浓厚的兴趣。 两眼一抹 力,啃厚重的书往往变成了一项艰巨的挑战。 如果你也面临类似的困扰,那么很幸运这本书“找”到了你。本书是我对这个问题给出的答案,即使不是最 优解,也至少是一次积极的尝试。本书虽然不足以让你直接拿到 Offer,但会引导你探索数据结构与算法的 “知识地图”,带你了解不同“地雷”的形状、大小和分布位置,让你掌握各种“排雷方法”。有了这些本领, 相信你可以更加自如地刷题和阅读文献,逐步构建起完整的知识体系。 我深深赞同费曼教授所言:“Knowledge 网页版以获得更优的阅读体验。 推荐语 “一本通俗易懂的数据结构与算法入门书,引导读者手脑并用地学习,强烈推荐算法初学者阅读!” ——邓俊辉,清华大学计算机系教授 “如果我当年学数据结构与算法的时候有《Hello 算法》,学起来应该会简单 10 倍!” ——李沐,亚马逊资深首席科学家 计算机的出现给世界带来了巨大变革,它凭借高速的计算能力和出色的可编程性,成为了执行算法与处理数 据的理想媒介。无论是电子游戏的逼真画面、自动驾驶的智能决策,还是0 码力 | 387 页 | 18.51 MB | 10 月前3Hello 算法 1.2.0 繁体中文 Rust 版
Hello 演算法 Rust 語言版 作者:靳宇棟(@krahets) 程式碼審閱:伍志豪(@night‑cruise)、榮怡(@rongyi) Release 1.2.0 2024‑12‑06 序 兩年前,我在力扣上分享了“劍指 Offer”系列題解,受到了許多讀者的鼓勵與支持。在與讀者交流期間,我 最常被問到的一個問題是“如何入門演算法”。漸漸地,我對這個問題產生了濃厚的興趣。 如果你也面臨類似的困擾,那麼很幸運這本書“找”到了你。本書是我對這個問題給出的答案,即使不是最 佳解,也至少是一種積極的嘗試。本書雖然不足以讓你直接拿到 Offer,但會引導你探索資料結構與演算法 的“知識地圖”,帶你了解不同“地雷”的形狀、大小與分布位置,讓你掌握各種“排雷方法”。有了這些本 領,相信你可以更加自如地刷題與閱讀文獻,逐步構建起完整的知識體系。 我深深認同費曼教授所言:“Knowledge 推薦語 “一本通俗易懂的資料結構與演算法入門書,引導讀者手腦並用地學習,強烈推薦演算法初學者閱讀!” ——鄧俊輝,清華大學計算機系教授 “如果我當年學資料結構與演算法時有《Hello 演算法》,學起來應該會簡單 10 倍!” ——李沐,亞馬遜資深首席科學家 電腦的出現為世界帶來了巨大的變革,它憑藉高速的運算能力與卓越的可程式化特性,成為執行演算法 與處理資料的理想媒介。無論是電玩遊戲的逼真畫面、自動駕駛的智慧決策,還是0 码力 | 388 页 | 18.82 MB | 10 月前3Rust 在算法交易中的实际应用与积极效应
第三届中国Rust开发者大会 Rust 在算法交易中的实际应用 与积极效应 非凸科技首席架构师 乔丹 上海非凸智能科技有限公司(简称“非凸科技”)成 立于2018年,是国内领先的智能算法和交易系统服 务公司,专注于智能算法交易领域的研究和开发。 公司正基于Rust生态,结合机器学习、深度学习等新 兴技术,打造高效率、低延迟、高可靠、全内存高频 交易平台,满足自身在量化行业交易业务的同时也为 交易平台,满足自身在量化行业交易业务的同时也为 券商、量化私募等众多大型金融机构提供优质的算法 交易解决方案。 公司介绍 证监会信息技术系统备案 国家高新技术企业 科技型中小企业 双软企业资质认证 智能投研技术联盟核心成员 100+ 团队规模 80亿+ 日均成交额 100+ 合作机构 公司结构 50% 工程师 20% 策略研究 20% 运维中台 10% 市场商务 上海 徐汇漕河泾 总部 浦东世纪汇 浦东世纪汇 策略中心 北京/成都 分公司 研发中心 自建超算中心 徐州 新加坡/美国 海外 研发中心 Rust 在非凸算法交易服务中的全栈应用实践 内 部 智 能 引 擎 行情服务 总控模块 预测模型 策略模块 数据总线 智 能 特 征 工 程 去量纲:标准化、归一化 缺失值处理:样条插值 降维:PCA A I 信 号 生 成 LSTM 神经网络 BP 全连接网络0 码力 | 18 页 | 3.49 MB | 1 年前3⽤ egg 孵化你的 SQL 优化器 - 王润基
Filter Join A Join B C Join C Join A B Join Hash Join Sort-merge Join Nested Loop Join 连接重排序 连接算法选择 TopN A Order TopN A Limit 查询优化 定义计划节点 定义重写规则 ⽤纯 Rust 编写的第⼀代优化器 Visitor 模式 ⽤纯 Rust 编写的第⼀代优化器 Join Reordering Equal Join Equal Join ① + pushdown ① ② ② ③ ③ cost=N^3 cost=N^2+N^2 定义规则:连接重排序 / 等值连接 Row Analysis 估计⾏数 • Expr:Selectivity 0-1 • Plan:Rows CostFunction 估计代价 • Expr:每⾏计算开销0 码力 | 39 页 | 6.48 MB | 1 年前3Comprehensive Rust(简体中文) 202412
27.3 编译器 Lint 和 Clippy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 27.4 练习:卢恩算法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158 27.4.1 解答 . . . . . . . full equivalence will use Eq as a trait bound. PartialOrd and Ord PartialOrd 定义了使用 partial_cmp 方法的部分排序。它用于实现<、<=、>= 和> 运算符。 use std::cmp::Ordering; struct Citation { author: String, year: u32, } impl Some(Ordering::Equal) => self.year.partial_cmp(&other.year), author_ord => author_ord, } } } Ord 是总排序,其中 cmp 返回 Ordering。 PartialEq 可以在不同类型之间实现,但 Eq 不能,因为它具有自反性: struct Key { id: u32, metadata: Option0 码力 | 359 页 | 1.33 MB | 10 月前3Comprehensive Rust(繁体中文)
157 27.3 編譯器檢查 (Lint) 和 Clippy . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 27.4 盧恩演算法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158 27.4.1 解決方案 . . . . minutes. It contains: Slide Duration 測試模組 5 minutes 其他資源 5 minutes 編譯器檢查 (Lint) 和 Clippy 3 minutes 盧恩演算法 30 minutes 27.1 單元測試 Rust 和 Cargo 提供了一個簡單的單元測試 (unit test) 框架: • 在你的程式碼的任何地方都可添加單元測試。 • 整合測試 (integration 件,且會一直添加新的 Lint (包括預設拒絕的 Lint)。 請注意,您可以使用 cargo fix 或編輯器,修正含有 help: ... 的錯誤或警告。 27.4 盧恩演算法 盧恩演算法 盧恩演算法可用於驗證信用卡號碼。這個演算法會將字串做為輸入內容,並執行下列操作來驗證信用卡號 碼: • Ignore all spaces. Reject number with fewer than two0 码力 | 358 页 | 1.41 MB | 10 月前3
共 21 条
- 1
- 2
- 3