![](https://img-blog.csdnimg.cn/20190927151026427.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
算法零碎小记
文章平均质量分 71
算法零碎小记
_WuZHua
初入软件,自学算法,多多指教!
展开
-
日常算法刷题整理
日常算法刷题整理一、字符串处理二、数学三、数据结构1、区间问题1.1、树状数组板子:#include<iostream>#include<vector>#define type intusing namespace std;// n:元素个数,m:操作次数int n, m;vector<type> a, c; // a是原数组,c是树状数组int lowbit(int x){ return x&(-x);}void原创 2020-11-16 10:36:51 · 190 阅读 · 0 评论 -
归并排序求逆序对
#include<iostream>using namespace std;int n, a[100], b[100], tot = 0;void merge_sort(int l, int r){ if(l >= r) return; int mid = (l + r) / 2; merge_sort(l, mid); merge_sort(mid + 1, r); int i = l, j = mid + 1, k = 0; .原创 2020-08-17 11:03:56 · 133 阅读 · 0 评论 -
汉诺塔——已知状态,求步数
题目描述给出一个汉诺塔游戏中的某一个阶段的状态,你能算出它从最初始状态到该状态用了最少的步数吗输入说明第一行输入整数 n (1 \le n \le 60)n(1≤n≤60),表示圆盘的数量,圆盘的标号分别是 1,2,…,n1,2,…,n 。接下来输入三行,第 ii 行输入 kk,表示第 ii 根柱子的圆盘数量,后面接着输入 kk 个数,表示柱子上从上到下圆盘的编号。 保证输入是一个合法的汉诺塔游戏状态。输出说明输出一行,表示到达给的状态的最小步数。样例输入31 32 1 20样例输原创 2020-08-16 22:30:04 · 916 阅读 · 0 评论 -
最大回文长度
最大回文长度计算给一个字符串,判断该字符串的最大回文长度Input Specification:输入一个字符串Output Specification:输出一个数字,表示最大回文长度Sample Input 1:ABCBASample Output 1:5Sample Input 2:ABCBDSample Output 2:3代码:#include<iostream>#include<string>using namespace std;原创 2020-06-23 19:19:24 · 251 阅读 · 0 评论 -
牛客网-华为机试(部分、自用)
牛客网,华为机试思路解析103考点:最长不下降子序列《算法笔记》P423页动态规划,列出状态转移方程:dp[i] = max(1, dp[j]+1)关键程序代码:for(int i = 1; i <= n; ++i) { dp[i] = 1; for(int j = 1; j < i; ++j) { if(a[i] > a[j] && (dp[j] + 1 > dp[i])) { dp[i]原创 2020-06-20 17:19:14 · 2639 阅读 · 0 评论 -
C语言算法与数据结构——hashmap(板子)
#include <stdio.h>#include <stdlib.h>#include <string.h>typedef struct Node* Link;struct Node { char data[15]; Link next; int count;};typedef struct Table* hashtabl...原创 2019-12-29 10:42:30 · 183 阅读 · 0 评论 -
二叉树——中序 + 前序——>层次(板子)
第一行输入结点个数第二行输入中序遍历的结点顺序第三行输入前序遍历的结点顺序最后输出层序遍历的答案输入样例:74 2 5 1 6 3 71 2 4 5 3 6 7输出样例:1 2 3 4 5 6 7 //代码如下#include <iostream>#include <queue>using namespace std;typedef str...原创 2019-11-23 11:13:21 · 222 阅读 · 1 评论 -
并查集
并查集这篇博客给大家稍微介绍一下算法中 并查集 的用法:并查集是一种简单的树,核心思想是通过父类数组记录父类(也就是与之有关的另一个数据)具体的关系和父子构建方法,需要读者根据具体问题具体设计。题目中比较常用的,也是最简单的并查集的用法就是计算群的数量例如学校里有一群同学在一块组织活动组织者组织了一个活动,需要:所有认识的同学站成一个队伍,其中,若A认识B,A认识C,则B和C也当作互...原创 2019-11-19 22:40:44 · 124 阅读 · 0 评论 -
初入江湖,谨以此篇作为我在CSDN的开始
第一篇博客!!!你好! 欢迎来到面向案例编程的CSDN博客!这是第一篇博客。就从我学的第一段代码开始吧!作为一个简单的开始!#include<iostream>int main(){ cout << "Hello World!"; return 0;}...原创 2019-08-15 22:18:22 · 113 阅读 · 0 评论