
初级算法
文章平均质量分 86
各种类型的初级算法题目
HilariousDog
记录所学,帮助成长。Good luck!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
NP完全问题与例题
一个算法的运行时间是输入规模nnn的某个多项式函数,就称这个算法的时间复杂度是“多项式时间”。形式上:如果一个算法的运行时间是OnkO(n^k)Onk,其中kkk是某个常数,那么我们说它是“多项式时间算法”。原创 2025-04-09 11:30:41 · 1050 阅读 · 0 评论 -
高级数据结构——hash表与布隆过滤器
本文讲述了hash表的原理与实现、hash冲突及解决方法、基于位图和hash函数实现的布隆过滤器、以及用于负载均衡的分布式一致性hash等。原创 2024-11-16 20:29:36 · 1288 阅读 · 0 评论 -
高级数据结构——跳表skiplist
跳表是redis采用的实现有序集合的数据结构之一, 具有查询效率高和实现相对简单的优势。本文介绍了跳表的原理和代码实现,参考的是《redis5设计与源码分析》这本书。原创 2024-11-08 00:00:15 · 933 阅读 · 0 评论 -
算法详解——链表的归并排序非递归解法
本文使用倍增法加上归并排序操作实现了对链表的快速排序,比起一般的递归式归并排序要节省空间并且实现要简单的多,比起一般的迭代式归并排序实现也要简单。原创 2024-11-07 16:14:01 · 1323 阅读 · 0 评论 -
算法详解——线段树
线段树是一个高度平衡二叉树,它主要用来高效动态地管理一个序列。线段树叶子结点存储序列元素值,分支结点存储一个连续地子区间的某种聚合信息,例如最值、均值等信息。原创 2024-10-31 13:02:09 · 1310 阅读 · 0 评论 -
常用排序算法总结
总结了算法教材上的常见排序算法,伪代码使用ADL语言描述算法原创 2024-10-22 17:17:53 · 1596 阅读 · 0 评论 -
算法题:所有可能的真二叉树
另一种是策略是:每次都从当前结点选择其左右子树结点的数量,如果需要从当前结点开始构建一个n个结点的真二叉树,那么左右子树的结点总数为n-1,左右子树的结点数量也都为奇数,因此可以将左子树的结点数量从1开始每次加2进行遍历,这样就可以枚举出所有情况。当n==1时就可以结束递归。一种策略是:每次都从度为0的结点中选择一个,给它填充左右子结点。但是这样会导致最终答案重复。首先能想到用递归来构建每一种可能的情况。那么每次递归时应该怎样进行选择呢?由题可得,真二叉数的结点数量必定为奇数。原创 2024-04-02 17:00:38 · 379 阅读 · 0 评论 -
算法题:子树的大小
子节点的个数就是$ rchild - lchild$。要算出子树的结点总数,可以从k结点出发,将各层子节点数量相加,直到rchild > n,此时如果lchild > n则最后一层没有子节点,否则最后再加上lchild - n + 1。个结点的完全二叉树,结点按从根到叶、从左到右的顺序依次编号。个结点对应的子树拥有的结点数量。的结点的子节点最右端为。,最左端的子节点序号为。原创 2024-03-16 00:34:15 · 761 阅读 · 0 评论 -
算法题:太阳
将所有线段从高到底排序,之后依次遍历计算其在x轴上的投影,如果与已有的投影段重合,则说明不能被太阳照到。需要特别注意投影段的更新过程,这里采用map保存阴影段的左端点和右端点横坐标,应该有更简洁的实现方法。,有m条平行于x轴的线段,其坐标、长度和高度为。,问多少条线段能够被太阳照到。在二维坐标系中,太阳的高度位。原创 2024-03-15 19:30:17 · 614 阅读 · 0 评论 -
算法题:奇怪的数
位满足题设条件的分布种数。设dp[a][b][c][d]表示后4位数分别选择a、b、c、d时前。要求n位数的数字A中任意5位的和不能超过m,问这样的数字A有多少种。位数字的可能分布情况。此题应该使用动态规划。原创 2024-03-14 17:30:50 · 534 阅读 · 0 评论 -
c语言编写勒让德多项式递归输出,高精度!
勒让德多项式的递归输出,接收浮点类型的高精度输出。浮点运算结果的精度是由参与运算的数据类型和等号左边的赋值变量数据类型决定的。所以可以通过使用高精度浮点类型变量来提高结果精度。实现代码:# include"stdio.h"double Pn(double x,int n);int main(){ double x; double result; int n; scanf("%lf%d",&x,&n); result = Pn(x,原创 2020-10-28 16:52:58 · 4618 阅读 · 1 评论