- 博客(90)
- 资源 (4)
- 收藏
- 关注
原创 第十二单元 数论算法12.1 同余的性质12.2 最大公约数、最小公倍数
第十二单元 数论算法12.1 同余的性质12.2 最大公约数、最小公倍数
2022-09-08 20:24:41 642
原创 11.4 排列和组合的产生(有重集元素) 对不起大家WWW我死了一段时间
11.4 排列和组合的产生(有重集元素) 对不起大家WWW我死了一段时间
2022-08-16 19:35:02 371 5
原创 11.3 排列和组合的产生(无重集元素)
11.3 排列和组合的产生(无重集元素)(1) 全排列(2) 一般组合(3) 全组合(4) 由上一排列产生下一排列(5) 由上一组合产生下一组合
2022-07-18 21:01:59 142 2
原创 C++11.2 组合数的计算11.3 排列和组合的产生(无重集元素)
11.2 组合数的计算!(1) 使用加法递推——O(n^2)(2) 使用乘法递推——O(n)11.3 排列和组合的产生(无重集元素)!(1) 全排列(2) 一般组合(3) 全组合(4) 由上一排列产生下一排列(5) 由上一组合产生下一组合...
2022-07-12 20:48:13 366 1
原创 C++第十一单元 数学基础11.1 组合数学
有 高中数学知识C++第十一单元 数学基础11.1 组合数学(1) 加法定理与乘法原理(2) 排列与组合(3) 鸽巢原理(抽屉原理)(4) 容斥原理
2022-07-11 18:31:44 306
原创 C++10.7 哈希(Hash)表
10.7 哈希(Hash)表(1) 实现(2) 散列函数(3) 开散列方法(4) 闭散列方法(开地址方法)(5) 删除*
2022-07-10 10:52:19 738
原创 10.6 哈夫曼(Huffman)树(1) 建立哈夫曼树(2) 哈夫曼编码
10.6 哈夫曼(Huffman)树(1) 建立哈夫曼树(2) 哈夫曼编码
2022-07-07 17:22:25 383 4
原创 第九单元 基本数据结构9.1 线性表(顺序结构)9.2 线性表(链式结构)
第九单元 基本数据结构9.1 线性表(顺序结构)9.2 线性表(链式结构)
2022-07-02 11:09:59 117
原创 8.2 简单排序算法 (1) 插入排序 (2) 选择排序 (3) 冒泡排序 8.3 线性时间排序(1) 桶排序 (2) 计数排序 (3) 基数排序*(附代码)
8.2 简单排序算法(附代码) (1) 插入排序! (2) 选择排序! (3) 冒泡排序!8.3 线性时间排序(附代码) (1) 桶排序! (2) 计数排序 (3) 基数排序*
2022-07-01 09:30:09 139
原创 【毕业季·进击的技术er】这三年来的风风雨雨,喜怒哀乐,坎坎坷坷,朝朝暮暮……都是那么美好,那么令人难以忘记。
【毕业季·进击的技术er】这三年来的风风雨雨,喜怒哀乐,坎坎坷坷,朝朝暮暮……都是那么美好,那么令人难以忘记。
2022-06-28 09:55:15 134
原创 7.5 二维费用的背包问题
【问题描述】有 n 件物品和一个容量为 C、容积为 U 的背包。第 i 件物品的重量是 w[i],体积是 u[i],价值是 v[i]。求解将哪些物品装入背包可使价值总和最大。(1) 0/1 背包的表示方法费用加了一维,只需把状态也加一维。1. 状态表示:设 f[i][c][u]为前 i 件物品付出两种代价分别为 c 和 u 时可以获得的最大价值。2. 状态转移方程:当然,为了节省空间,可以把 i 去掉。3. 一个启示:当发现由熟悉的动态规划题目变形而来的题目时,在原来的状态中加一维以满..
2021-11-28 17:10:58 396
原创 7.3 完全背包问题7.4 多重背包问题
7.3 完全背包问题【问题描述】有 n 种物品和一个容量为 C 的背包。第 i 种物品的重量是 w[i],价值是 v[i],数量无限。求解将哪些物品装入背包可使价值总和最大。(1) 基本算法1. 状态转移方程:f[i][c]=max{f[i-1][c-k×w[i]]+k×v[i]},0≤k×w[i]≤c ...
2021-11-08 18:04:34 163
原创 第七单元 背包专题 7.1部分背包问题 与 7.2 0/1 背包问题
第七单元 背包专题这个整理了好久,求谅解,谢谢7.1 部分背包问题参见 “4.1 装载问题”。部分背包问题是贪心算法问题,其他背包问题都是动态规划问题。7.2 0/1 背包问题!【问题描述】有 n 件物品和一个容量为 C 的背包。第 i 件物品的重量是 w[i],价值是 v[i]。求解将哪些物品装入背包可使价值总和最大。(1) 二维数组表示1. 定义状态:f[i][c]表示前 i 件物品恰放入一个容量为 c 的背包可以获得的最大价值。2. 状态转移方程:// 注意边界.
2021-11-05 18:28:59 240
原创 6.11 小结
6.11 小结动态规划:各个阶段采取的决策依赖于当前状态,又随即引起状态的转移,在变化的状态中产生一个决策序列,这种解决多阶段决策最优化问题的方法为动态规划方法。1. 动态规划的基本思想动态规划的基本思想是“空间换时间”,努力避免重复解决相同问题或子问题。由于这个原因,动态规划的速度比搜索快得多。2. 动态规划的原理动态规划满足两个原理:最优化原理、无后效性原则。最优化原理指无论过去的状态和决策如何,对前面的决策所形成的当前状态而言,余下的诸决策必须构成最优策略。通俗地说,如果全局最优,那么一定
2021-10-24 18:22:59 1019
原创 6.10 Bitonic 旅行
“货郎担问题”是 NP 问题,只能用搜索解决。后来,J. L. Bentley 提出了的变形——Bitonic Tour问题(又称双调旅程问题)。这个新问题可以用动态规划解决。【问题描述】已知地图上 n 个旅行须到达城市的坐标,要求从最西端的城市开始,严格地由西向东到最东端的城市,再严格地由东向西回到出发点。除出发点外,每个城市经过且只经过一次。给出路程的最短值。(1≤n≤1000)【分析】可以看出来,如果以城市来表示状态,将与搜索无异!1. 递推之前的预处理:将地点按从东到西编号(按横坐标大小.
2021-10-16 12:36:11 203
原创 又是C++考试重点哦 ♥ 6.9 状态压缩类问题:过河(说实话这题小学数学就有类似的)
【问题简述】一个独木桥,可看做一个数轴,上面每个点的坐标分别为 0、1、2、……、L(L≤109)。青蛙从坐标为 0 的点出发,不停地跳跃,直到跳到或超过 L 点。它一次跳跃的距离最小为 S,最大为 T(包括 S、T,1≤S≤T≤10)。独木桥上有 M(M≤100)个石子,位置都是已知的,并且不会重叠。青蛙讨厌踩到石子上。问:青蛙若想通过独木桥,最少要踩几个石子?【分析】很容易想出,若 f(i)表示从起点到达 i 坐标点所踩到石子的最小个数,则f(i)=min{f(i-k)}+f(i),s≤k≤t
2021-10-15 20:04:40 164
原创 NOIP复习C++篇J组重难点!6.8 树形动态规划
(1) 苹果树【问题描述】有一棵苹果树,如果树枝有分叉,一定是分 2 叉(就是说没有只有 1 个儿子的结点)。这棵树共有 n 个结点(叶子点或者树枝分叉点),编号为 1~n,树根编号一定是 1。我们用一根树枝两端连接的结点的编号来描述一根树枝的位置。下面是一颗有 4 个树枝的树:现在这颗树枝条太多了,需要剪枝。但是一些树枝上长有苹果。已知需要保留的树枝数量为 q,求出最多能留住多少苹果。数据规模:1<n≤100,1≤q≤n,每个树枝上的苹果数量不超过 30000(网友:理论上30000个苹果是.
2021-10-15 17:37:51 293
N皇后问题二解,C++,N皇后问题CSP考试考题,Dev-C++运行
2022-07-10
N皇后问题一解,C++,N皇后问题CSP考试考题,Dev-C++运行
2022-07-10
吃豆人.cpp 吃豆人C++版-新手至以上(入门至萌新应该可以看懂一些)拿走就可以运行
2021-11-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人