算法
啊,我醉了
这个作者很懒,什么都没留下…
展开
-
所有排序算法汇总,时间空间效率
排序方法平均情况最好情况最坏情况辅助空间稳定性冒泡排序O(n^2)O(n)O(n^2)O(1)稳定简单选择排序O(n^2)O(n^2)O(n^2)O(1)稳定直接插入排序O(n^2)O(n)O(n^2)O(1)稳定堆排序O(nlogn)O(nlogn)O(nlogn)O(1)不稳定归并排序O(nlogn)...原创 2020-02-01 15:43:49 · 1823 阅读 · 0 评论 -
poj2485:highways(高速公路)(最小生成树算法)
poj2485:highways(高速公路)(最小生成树算法)题目:poj2485highways(高速公路)先简单说一下这个题目,就是给你两个城市之间距离,然后你选择修建公路让这些城市必须连通,而且使得所需要修建的公路总长度最短,在你修建的公路当中最长的那个公路输出出来。我使用的是prim算法。具体思路是:先从第一个城市开始,找出距离它最近的城市,在它们之间修建公路,此时这两个城市就已...原创 2019-08-05 11:34:58 · 630 阅读 · 0 评论 -
poj1664:放苹果问题(递归)
放苹果:http://poj.org/problem?id=1664咱们设苹果的个数为m个,盘子的个数为n个。第一种情况:如果苹果只有一个或者零个,即m=1或m=0,此时只有一种放法;第二种情况:如果盘子只有一个,即n=1,那你所有苹果都得放到这一个盘子中,只有一种放法;第三种情况:如果说盘子个数比苹果多,那么这种情况就相当于盘子与苹果的个数一样,因为比苹果多出的那些盘子也没啥用;...原创 2019-08-03 19:58:58 · 261 阅读 · 0 评论 -
poj1458最长公共子序列(动态规划)
poj1458最长公共子序列(动态规划)问题:北大oj1458**c[i][j]**表示x字符串的前i个字符与y字符串前j个字符的最长公共子序列;如果x的第i个字符与y的第j个字符相同,那么从c[i][j]肯定等于c[i-1][j-1]。如果x的第i个字符与y的第j个字符不相同,c[i][j]肯定是c[i-1][j]或者c[i][j-1]中的一个较大值。//poj1458最长公共子序列...原创 2019-07-07 11:49:00 · 288 阅读 · 0 评论 -
整数拆分(递归算法)
所谓整数划分,是指把一个正整数n写成如下形式:n=m1+m2+m3+…+mi;(其中mi为正整数,并且1<=mi<=n),则{m1,m2,m3,…,mi}为n的一个划分。如果{m1,m2,m3,…,mi}中的最大值不超过m,即max{m1,m2,m3,…,mi} <= m,则称它属于n的一个m划分。例如:当n=4时,它有5个划分:{4}、{3,1}、{2,2}、{2,1,1...原创 2019-08-06 19:53:40 · 9214 阅读 · 5 评论 -
集合划分(递归算法)
问题描述:n个元素的集合{1,2,3, …,n }可以划分为若干个非空子集。例如,当n=4 时,集合{1,2,3,4}可以划分为15 个不同的非空子集如下:{{1},{2},{3},{4}},{{1,2},{3},{4}},{{1,3},{2},{4}},{{1,4},{2},{3}},{{2,3},{1},{4}},{{2,4},{1},{3}},{{3,4},{1},{2}}...原创 2019-08-06 20:39:39 · 8589 阅读 · 1 评论 -
n皇后问题(递归)
//n皇后 #include<stdio.h>#include<stdlib.h>#include<math.h>#define N 20 //最大皇后个数 int q[N+1]={0};//q[i]表示第i行的皇后的列号 int count=0;//解的个数 int judge(int i,int j){//判断i行j列是否可放 for(in...原创 2019-08-07 10:35:39 · 425 阅读 · 0 评论 -
整数因子分解问题(递归)
问题描述:对于给定的正整数n,计算n有多少种不同的分解式。例如,当n=12时,有8种不同的分解式:12=12;12=6×2;12=4×3;12=3×4;12=3×2×2;12=2×6;12=2×3×2;12=2×2×3;根据他的规律往下递归。n的第一个因子可能是2~n之间的数.例如12,它的第一个因子可能是2,3,4,6,12;将第一个因子为2的分解个数,加上第一个因子...原创 2019-08-07 10:20:31 · 4141 阅读 · 0 评论