算法
I can丶
这个作者很懒,什么都没留下…
展开
-
动态规划
目录 01背包 完全背包 最长上升子序列 最长公共子序列 01背包 int N,V; // 物品数量、背包重量 int value[MAX],volume[MAX]; // 物品价值、物品重量 int dp[MAX]; // dp结果 void solve(){ memset(dp,0,sizeof(dp)); for(int i=1;i<=N;i++) fo...原创 2018-07-11 19:23:09 · 156 阅读 · 0 评论 -
搜索算法
目录 深度优先搜索(dfs)以八皇后问题为例 深度优先搜索(dfs)以八皇后问题为例 #define MAX 105 int n,vis[3][MAX]; int cnt=0; void dfs(int d){ if(d==n+1){ cnt++; return; } for(int j=1;j<=n;j++){ if(!vis[0][j] &...原创 2018-07-05 14:04:38 · 208 阅读 · 1 评论 -
素数筛
目录 埃氏筛 线性筛(欧拉筛) 埃氏筛 int prime[MAX],is_prime[MAX],tot=0; void sieve(){ memset(is_prime,1,sizeof(is_prime)); // 初始化为都是素数 for(int i=2;i<MAX;i++){ if(is_prime[i]){ prime[tot++]=i; /...原创 2018-07-05 14:11:25 · 173 阅读 · 0 评论 -
手写基础排序及查找算法
目录 冒泡排序 插入排序 选择排序 快速排序 归并排序 二分查找 冒泡排序 void bubble_sort(int a[],int n){ int t; for(int i=n-1;i>=0;i--) for(int j=0;j<i;j++) if(a[j]>a[j+1]){ t=a[j];a[j]=a[j+1];a...原创 2018-07-16 17:16:28 · 181 阅读 · 0 评论 -
图论算法
目录 并查集 最小生成树(克鲁斯卡尔) 最短路(Dijkstra) 最短路(SPFA) 最短路(Floyd) 拓扑排序 欧拉路径 并查集 int fa[MAX]; void init(){ for(int i=0;i<MAX;i++)fa[i]=i; } int find(int i){ int temp=i; while(temp!=fa[temp])t...原创 2018-07-07 20:55:04 · 410 阅读 · 0 评论 -
大数算法
目录 大数相加 大数相减 大数相乘 大数相除 大数相加 string add(string a,string b){ int temp=0;char c;string ans=""; while(a.size()>b.size())b='0'+b; // 补零 while(a.size()<b.size())a='0'+a; for(int i=0,j=a...原创 2018-08-21 18:43:23 · 404 阅读 · 0 评论