
秒懂秒上手
普青落
这个作者很懒,什么都没留下…
展开
-
秒懂秒上手——贪心算法全知道(带例题+详解)
例题一的完整代码:#include <iostream>#include <algorithm>#include <cstring>using namespace std;const int MAXN=1000;int a[MAXN],s[MAXN];int main(){ int n,r,j=0,minx=0; memset(s,0,sizeof(s)); cin>>n>>r; for(int i..原创 2020-07-05 17:43:09 · 587 阅读 · 0 评论 -
搜索与回溯——广搜与深搜
深搜优点1、能找出所有解决方案2、优先搜索一棵子树,然后是另一棵,所以和广搜对比,有着内存需要相对较少的优点缺点1、要多次遍历,搜索所有可能路径,标识做了之后还要取消。2、在深度很大的情况下效率不高void DFS() //N代表目前DFS的深度{ if(找到解) //进行相应的操作 { … return; } for(inti=0;i<4;i++) //枚举四个方向 { DFS(N+1); //进入下层递归 }}一般情况下,套用上述公式即可。(枚举原创 2020-07-05 13:57:08 · 316 阅读 · 0 评论 -
一分钟了解搜索与回溯
递归回溯法算法框架[一]int Search(int k){ for (i=1;i<=算符种数;i++) if (满足条件) { 保存结果 if (到目的地) 输出解; else Search(k+1); 恢复:保存结果之前的状态{回溯一步} }}递归回溯法算法框架[二]int Search(int k)...原创 2020-05-03 15:54:18 · 234 阅读 · 0 评论 -
一分钟了解递推
递推的特点在于,每一项都和他前面的若干项由一定的关联,这种关联一般可以通过递推关系式来表示,可以通过其前面若干项得出某项的数据。对于递推问题的求解一般从初始的一个或若干个数据项出发,通过递推关系式逐步推进,从而得出想要的结果,这种求解问题的方法叫递推法。其中,初始的若干数据项称为边界。练习1:把雌雄各一的一对新兔子放入养殖场中。每只雌兔在出生两个月以后,每月产雌雄各一的一对新兔子。试问第n...原创 2020-05-03 14:02:09 · 1649 阅读 · 0 评论 -
高精度算法全知道
看到这句话请回复666并点赞,谢谢支持!原创 2020-04-12 17:07:54 · 110 阅读 · 0 评论 -
“函数”全知道
看到这句话请回复666并点赞,谢谢支持!原创 2020-04-05 16:04:17 · 165 阅读 · 0 评论 -
快速了解递归与循环
递归:你打开面前这扇门,看到屋里面还有一扇门。你走过去,发现手中的钥匙还可以打开它,你推开门,发现里面还有一扇门,你继续打开它。若干次之后,你打开面前的门后,发现只有一间屋子,没有门了。然后,你开始原路返回,每走回一间屋子,你数一次,走到入口的时候,你可以回答出你到底用这你把钥匙打开了几扇门。循环:你打开面前这扇门,看到屋里面还有一扇门。你走过去,发现手中的钥匙还可以打开它,你推开门,发现里面还...原创 2020-03-29 16:44:26 · 1462 阅读 · 3 评论 -
一分钟了解冒泡排序及结构体
#include<iostream>using namespace std;int main(){ int a[8]={1,2,4,5,6,4,2,8}; for(int i=0;i<8;i++) for(int j=i+1;j<8;j++) if(a[i]>a[j]) { int t=a[i]; a[i]=a[j...原创 2020-03-15 17:14:55 · 334 阅读 · 0 评论 -
一分钟了解选择排序
#include<iostream>using namespace std;const int MAXN=10001;int main(){ int n,k,i,j; float temp,a[MAXN]; cin>>n; for (i=0;i<n;i++) cin>>a[i]; ...原创 2020-03-15 17:00:25 · 164 阅读 · 0 评论 -
一分钟了解插入排序
void msort(int s,int t){ if(s==t) return; //如果只有一个数字则返回,无须排序 int mid=(s+t)/2; msort(s,mid); //分解左序列 msort(mid+1,t); //分解右序列 int i...原创 2020-03-15 16:53:15 · 105 阅读 · 0 评论 -
一分钟了解分治排序(归并排序)
void msort(int s,int t){ if(s==t) return; //如果只有一个数字则返回,无须排序 int mid=(s+t)/2; msort(s,mid); //分解左序列 msort(mid+1,t); //分解右序列 int ...原创 2020-03-15 16:48:07 · 149 阅读 · 0 评论 -
如何写一篇文章——文档制作帮助
如何写一篇文章——文档制作帮助原创 2020-03-15 15:54:16 · 222 阅读 · 0 评论 -
一分钟了解快速排序2
程序在此,又用双击666!讲解请看“一分钟了解快速排序”#include <stdio.h> int a[101],n;//定义全局变量,这两个变量需要在子函数中使用 void quicksort(int left,int right) { int i,j,t,temp; if(left>right) return; ...原创 2020-03-15 14:50:25 · 108 阅读 · 0 评论 -
一分钟了解快速排序
开始排序交换再次交换“i”与“j”相遇交换基准数这是快速排序的全过程原创 2020-03-15 14:47:41 · 106 阅读 · 0 评论