牛客
文章平均质量分 74
我好方^-^
我好方,希望接下来一个月一切顺利
展开
-
快速排序 归并排序 堆排序
本文基于C++完成实现了快速排序,归并排序,堆排序。代码结构如下-- quickSort 递归实现快速排序-- mergeSort 递归实现归并排序------ merge 实现两个有序数组的归并-- heapSort 实现堆排序------ heapify 实现从一个数组转化为堆------ down 实现 调节以该顶点为根的堆快速排序 void quickSort(vector<int> & arr, int lo, int hi) {原创 2021-03-24 21:56:09 · 173 阅读 · 0 评论 -
求岛屿的数量 并查集
岛屿数量题解可以直接深度优先或者广度优先遍历,然后统计连通图的个数。今天用新学的并查集来做。并查集主要用来 集合的合并和查询。并查集的实质构造关系,保存父亲节点的树结构。合并集合,合并两棵树,将树的根节点并入另一个树的根节点具体代码实现如下 int fa[305*305]; // 定义父亲节点 int siz[305*305]; // 以该节点为首的集合的元素个数 void merge(int x, int y) { // 合并两个点 x,y,原创 2021-02-28 18:02:07 · 195 阅读 · 0 评论 -
链式前向星 牛客训练营 C 红和蓝 Hwcy的表达式
链式前向星 牛客训练营C 红和蓝链式前向星链式前向星C 红和蓝解题思路实现代码链式前向星图结构一般有邻接表和邻接矩阵,其中邻接表更适合边比较少的情况。假设有图有n个顶点,m个边邻接表保存的数据结构为,每个顶点包含那几条边。则遍历整个图的时间复杂度为 O(m)O(m)O(m)邻接矩阵则暴力,二维矩阵,G[i][j]G[i][j]G[i][j]代表i到j的边的权重。则遍历整个图的时间复杂度为O(n2)O(n^2)O(n2)一般的邻接表的定义为struct graph{ vector<i原创 2021-02-18 21:56:13 · 497 阅读 · 1 评论 -
牛牛与比赛颁奖 差分
差分思想解决问题牛牛与比赛颁奖 √裁判最多多少次记得目标分数Soda Machine 最多喂多少头牛牛牛与比赛颁奖 √牛牛与颁奖比赛#include <bits/stdc++.h>using namespace std;const int SIZE = 1e5+10;int cnt[SIZE]; // 过题数量有多少只队伍int main(){ memset(cnt, 0, sizeof(cnt)); map<int, int> diff; /原创 2021-02-06 15:32:37 · 214 阅读 · 2 评论 -
2021寒假算法基础集训营1-题解
2021牛客寒假算法基础集训营1F 对答案一时爽B 括号I 限制不互素的排列E 三棱锥之刻A 串C 红和蓝D 点一成零H 幂塔个数的计算J 一群小青蛙呱蹦呱蹦呱G 好玩的数字游戏比赛链接题目类型F 对答案一时爽签到 B 括号构造 I 限制不互素的排列构造 E 三棱锥之刻几何 A 串dp C 红和蓝构造 D 点一成零并查集+计数 H 幂塔个数的计算降幂 找规律 J 一群小青蛙呱蹦呱蹦呱数学 G 好玩的数字游戏模拟原创 2021-02-02 18:41:29 · 803 阅读 · 1 评论