07 2021 档案

摘要:完成阅读您将会了解最大公约数二进制方法的: 算法思想 实现步骤 实践范例(C++/Rust) 1. 算法思想 最大公约数(Greatest Common Divisor)的二进制求解算法基于三个基本定理: 对于任意给定的两个不等正整数$a$与$b$有, 若$a$,$b$同为偶,$a$与$b$的最大公 阅读全文
posted @ 2021-07-06 19:47 我的名字被占用 阅读(172) 评论(0) 推荐(0)
摘要:完成阅读您将会了解快速排序的: 算法思想 实现步骤 实践范例(C++/Rust) 1. 算法思想 快速排序(Quick Sort),简称快排,最早由 C.A.R.Hoare 在1962年于快速排序1一文提出。快速排序实质上运用分治(Divide & Conquer)思想,每次选取基准元素(Pivot 阅读全文
posted @ 2021-07-06 19:44 我的名字被占用 阅读(162) 评论(0) 推荐(0)
摘要:完成阅读您将会了解归并排序的: 算法思想 实现步骤 实践范例(C++/Rust) 1. 算法思想 归并排序(Merge Sort)由 John von Neumann 在1945年创造,最早描述在 Knuth, Donald 于1998年撰写的 “The Art of Computer Progra 阅读全文
posted @ 2021-07-06 19:42 我的名字被占用 阅读(140) 评论(0) 推荐(0)
摘要:完成阅读您将会了解堆排序的: 算法思想 实现步骤 实践范例(C++/Rust) 1. 算法思想 堆排序(Heap Sort)是数据结构堆的一个具体应用,由 J. W. J. Williams 在1964年发表的堆排序1提出。关于堆的介绍请前往数据结构堆查看。 在堆的基础上,每次取出堆顶,再维护剩余堆 阅读全文
posted @ 2021-07-06 19:41 我的名字被占用 阅读(132) 评论(0) 推荐(0)
摘要:完成阅读您将会了解中国余数定理的: 算法思想 实现步骤 实践范例(C++/Rust) 1. 算法思想 韩信点兵是后人描述中国余数定理(Chinese Remainder Theorem)营造的一个场景故事,其本质上是的中国余数定理的一个具体应用。中国余数定理最早由南北朝时期佚名作者在《孙子算经》中有 阅读全文
posted @ 2021-07-06 19:39 我的名字被占用 阅读(565) 评论(0) 推荐(0)
摘要:完成阅读您将会了解快速幂的: 算法思想 实现步骤 实践范例(C++/Rust) 1. 算法思想 普通幂运算可以表达为$an=\prod_a$。这样求解理论上需要进行n-1次乘法运算,时间复杂度为$\Theta(n)\(,且每次的乘数总是原先的a,浪费了CPU运算性能。因此**快速幂**(*Expon 阅读全文
posted @ 2021-07-06 19:38 我的名字被占用 阅读(259) 评论(0) 推荐(1)
摘要:完成阅读您将会了解二分查找的: 算法思想 实现步骤 实践范例(C++/Rust) 1. 算法思想 二分查找(Binary Search)是二分(Bisection)思想的经典应用,其概念最早在1946年由 John William Mauchly 在摩尔学院讲座中提出,后基本成型于 Derrick 阅读全文
posted @ 2021-07-06 19:37 我的名字被占用 阅读(398) 评论(0) 推荐(0)
摘要:完成阅读您将会了解堆的: 概念 构建方法 基本操作 C++实现 Rust实现 1. 概念 堆(Heap)的概念最早可见于 J. W. J. Williams 在1964年发表的堆排序1一文当中。本文介绍的堆指的是一种数据结构,注意与内存模型中垃圾回收机制(Garbage Collection Mec 阅读全文
posted @ 2021-07-06 19:35 我的名字被占用 阅读(109) 评论(0) 推荐(0)
摘要:完成阅读您将会了解栈的: 概念 构建方法 基本操作 C++实现 Rust实现 1. 概念 栈(Stack)是一种抽象数据类型,遵循后进先出(Last-In-First-Out, LIFO)原则,单端开放的线性表,如图11。栈可以模拟递归(Recursion),回溯(Backtracking),也常用 阅读全文
posted @ 2021-07-06 19:33 我的名字被占用 阅读(90) 评论(0) 推荐(0)
摘要:完成阅读您将会了解队列的: 概念 构建方法 基本操作 C++实现 Rust实现 1. 概念 队列(Queue)是一种抽象数据类型,遵循先进先出(First-In-First-Out, FIFO)原则,双端开放的线性表,如图11。队列可以辅助完成广度优先搜索(Breadth First Search) 阅读全文
posted @ 2021-07-06 19:31 我的名字被占用 阅读(81) 评论(0) 推荐(0)
摘要:完成阅读您将会了解链表的: 概念 构建方法 基本操作 C++实现 Rust实现 1. 概念 链表(Linked List)最早在1955年由兰德公司(Rand Corporation)在其编写的信息处理语言中作为原始数据类型而开发。链表与数组分别是两种基础数据储存类型——链式储存(Linked Me 阅读全文
posted @ 2021-07-06 19:28 我的名字被占用 阅读(171) 评论(0) 推荐(0)
摘要:完成阅读您将会了解二叉树的: 概念 构建方法 基本操作 C++实现 Rust实现 1. 概念 二叉树(Binary Tree)是最基本的树形结构,属于图论(Graph Theory)的有向无环图(Directed Acyclic Graph)范畴。一棵完整的二叉树,如图1 1,以根节点(Root)作 阅读全文
posted @ 2021-07-06 18:07 我的名字被占用 阅读(132) 评论(0) 推荐(0)