
数据结构
阿斯顿叫才能
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
贪心的矿工
贪心的矿工#include<iostream>#include<cstring>using namespace std;int N,T;long long ans=0;int value[1005][1005];int main(){ cin>>T; while(T--) { memset(value,0,sizeof(value)); cin>>N; for(int i原创 2021-04-17 13:25:52 · 123 阅读 · 0 评论 -
Payment Without Change
Payment Without Change题意:q组实例,每组输入a,b,n,s;代表有 a 个 n 元的硬币,和 b 个 1 元硬币,问能不能凑够 s 元?思路:先用足够数量的高价值硬币,剩下的用价值1的硬币判断并得出结果。从两方面下手:one、实际需要的 n 面值的硬币的个数 >= a(现在有的个数),two、实际需要的 n 面值的硬币的个数 < a(现在由的个数)。在这两种情况下,看 b 是否满足凑够 s。#include<iostream>using na原创 2021-04-11 12:11:19 · 107 阅读 · 0 评论 -
Ichihime and Triangle
Ichihime and Triangle简直太过分了。题意是要用x,y,z组成一个三角形,第一时间想到x+y>z。a<=x<=b b<=y<=c c<=z<=dx+y>z在x,y取最大值,z取最小值时能组成三角形的话,那就没问题了肯定能组成三角形了。#include<iostream>using namespace std;int main(){ long long t; cin>>原创 2021-04-08 07:09:39 · 210 阅读 · 0 评论 -
还是畅通工程
还是畅通工程该题是最短路和并查集的结合。需要注意sort(a,a+len,cmp);函数,此函数在for循环里,如果i是从1开始的,则a需要+1,,,,,一定不要搞混,一直交一直错。#include<iostream>#include<algorithm>using namespace std;const int n=1e6+5;long long s[n],ans=0;struct node{ long long x,y,w;} a[n];//初始化原创 2021-04-07 18:41:55 · 102 阅读 · 0 评论 -
小希的迷宫
小希的迷宫题意:1、判断迷宫中是否成环(如果成环则不止一条路可以到达某个房间)2、判断是否成森林(如果有森林,则永远到不了。#include<iostream>#include<cstdio>using namespace std;const int maxn=100005;int set[maxn],vis[maxn],x,y,flag;//初始化,每一个元素开始时都已自己为根void init_set(){ for(int i=0; i<ma原创 2021-04-07 06:59:03 · 110 阅读 · 0 评论 -
2021-04-01
Prime Path#include<stdio.h>#include<math.h>#include<string.h>#include<queue>using namespace std;struct node{ int date,s;};int n,m;int book[100000]; //记录是否访问过int Prime(int x){ //判断素数 if(x<=1) return 0;原创 2021-04-01 16:28:17 · 91 阅读 · 0 评论 -
Mike and strings
Mike and stringsstring:npos是个特殊值,说明查找没有匹配str.find(a)==string::npos;意思是,查找字符串str中是否含有字串astr.find(a)返回的是字符串的第一个字符的下标#include<bits/stdc++.h>using namespace std;typedef long long ll;string a[100];int main(){ int n; cin>>n; for原创 2021-04-01 14:49:40 · 131 阅读 · 0 评论 -
图的深度优先和广度优先遍历算法
编写一个程序,输出下面带权有向图的邻接表,并根据该邻接表,实现图的遍历运算,具体要求如下:(1)从顶点0开始的深度优先遍历序列(递归算法)(2)从顶点0开始的深度优先遍历序列(非递归算法)(3)从顶点0开始的广度优先遍历序列#include <iostream>#include<bits/stdc++.h>#define MAXV 100#define MaxSize 100#define INF 327676using namespace std;type.原创 2020-12-09 21:01:26 · 3953 阅读 · 1 评论 -
邻接矩阵与邻接表的相互转换
编写一个程序,输出带权图的邻接矩阵,并能将该邻接矩阵转换成相应的邻接表,并输出该邻接表,带权图如下图所示。具体效果如下:2.1.编写一个算法,实现由已知的邻接表产生对应的邻接矩阵,并输出。具体效果如下:#include <iostream>#include<bits/stdc++.h>#define MAXV 100#define MaxSize 100#define INF 327676using namespace std;typedef char .原创 2020-12-09 20:54:43 · 10855 阅读 · 3 评论 -
实现顺序串的各种基本运算
实现顺序串(SqString.cpp)中各种基本运算的算法今天是双十一,哈哈哈哈。买的两个手机壳回来了,一个有色差不过还可以,一个物图一致,啧啧啧。(1)初始化串并赋值例如:StrAssign(s,“abcdefghijklmn”);StrAssign(s1,“123”);即:主串S为:”abcdefghijklmn”子串S1为:”123”(2)串的输出例如:DispStr(s)(3)串的长度例如:StrLength(s)(4)串的插入,串的删除,串的替换例如:InsStr(s,9,原创 2020-11-11 20:49:49 · 7058 阅读 · 1 评论 -
稀疏矩阵的三元组表示
稀疏矩阵的三元组表示数据结构作业想找个方式保留下来[嘿嘿]掌握稀疏矩阵的特点(三元组存储方法)。掌握稀疏矩阵的三元组存储方法。稀疏矩阵的存储及基本运算。(1)针对给出的两个稀疏矩阵a和b,分别输出各自的三元组表示形式。其中,a,b矩阵表示如下:a,b矩阵三元组表示形式,预期结果下图所示:```cpp#include<iostream>#include<bits/stdc++.h>#define M 4#define N 4#define原创 2020-11-11 20:43:52 · 4247 阅读 · 0 评论