首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
算法导论
PAK向日葵
创建于2024-03-12
订阅专栏
Introduction to Algorithms
等 3 人订阅
共15篇文章
创建于2024-03-12
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
【算法导论】征服红黑树(后篇)
在上一篇文章我们已经理解了实现红黑树所需的理论知识。在本篇文章中,我将给出C语言版本的通用红黑树的具体实现思路。 你也可以在我的GitHub上下载到完整的代码:https://github.com/W
【算法导论】征服红黑树(前篇)
在之前的学习中,我们已经接触了二叉搜索树(Binary Search Tree, BST)和AVL树。 AVL树作为一种严格的平衡二叉搜索树,在一般BST树的基础上,实现了在向树中插入新节点或从树中删
【专业课学习】Python实现简单的遗传算法
求解区间[0, 31]上的何值可以使得函数y=x^2的取值最大.求解区间[0, 31]上的何值可以使得函数y=x^2的取值最大.
【算法导论】标准二分查找及其变式小结
虽然对于我们每个人来说二分查找都是耳熟能详的存在,但在实际刷题和开发过程中还是经常性地会写错二分查找(多为出现死循环)。故在此整理一下有关二分查找的常用模板。 标准二分查找 标准二分查找会找到非降序数
【专业课学习】「算法分析与设计」期末复习
算法 什么是算法 算法是用于求解实际问题的计算过程。实际问题的陈述说明了该问题的输入和所预期的输出结果,算法则描述通过该问题的输入求解出预期输出的过程。 算法的重要性 可以通过算法在实际生活实际问题中
【专业课学习】Graph Algorithms
Minimum Spanning Trees 下面的两种计算MST的算法在本质上都是贪心算法。 Prim Kruskal Single-Source Shortest Paths The Bellma
【专业课学习】Hash Tables
Hash functions 将关键字转换为自然数 哈希函数只能接收自然数以进行处理,因此需要将待处理的关键字事先通过合适的方式转换为自然数(有点像数据科学中要构造"特征向量")。 对于字符串,可以考
【专业课学习】Linear Time Sorting Algorithms整理
书接上回【专业课学习】Comparison Sorting Algorithm整理,这次我们来看看依赖额外空间的Linear Time Sorting Algorithm。 Counting Sort
【专业课学习】Dynamic Programming与 Greedy Algorithms例题整理
Dynamic Programming 0-1 Knapsack Problem Recursion: When weight[i] > w, we have dp[i][w] = dp[i - 1]
【专业课学习】数论相关算法问题
这里先开个坑,以后会把上课和做题过程中碰到的有关数论(Number Theory)的算法问题都放在这里。
【专业课学习】Comparison Sorting Algorithm整理
本文主要对《算法分析与设计》课程中涉及到的Comparison Sort Algorithm进行整理。 为了方便对算法进行测试,这里先编写一下测试用的代码: Merge Sort 代码 朴素版本的代码
【个人笔记】BinarySearch算法最全总结
BinarySearch是同学们耳熟能详的一种用于已排序顺序表的查找算法,也是很多同学最早接触的decrease-and-conquer算法。 但实际上在编程实现BinarySearch的过程中,对边
【专业课学习】顺序统计量问题
虽然在大一「数据结构」课堂上已接触过QuickSelect,但由于其与QuickSort有着千丝万缕的联系,非常重要。故今日趁着学习「算法分析与设计」课程的契机,再作一次复习,并于此记录之
【专业课学习】Maximum Subarray (DP & Recursion)
求解最大子数组问题 递推解法 课本中通过「股票买卖」这个生活实际问题引出了「求解最大子数组」这个算法问题(指在一个数组中找到一个连续子数组,使得该子数组的和最大)。 稍有编程经验的同学,看到这道题目,
【专业课学习】Analysis of Recursive Algorithms
这是我校《算法分析与设计》课程的课后作业习题及解析,在此进行记录,以便期末时候进行复习。 第一次作业 对于下列递归式,给出T(n)的渐进上界和渐进下界。假定对于足够小的n,T(n)是常数。请给出尽量紧