![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
acm学习资料
风吹过的烟花
这个作者很懒,什么都没留下…
展开
-
最大公约数和最小公倍数
求最小公倍数算法: 最小公倍数=两整数的乘积÷最大公约数 求最大公约数算法: 辗转相除法 有两整数a和b: ① a%b得余数c ② 若c=0,则b即为两数的最大公约数 ③ 若c≠0,则a=b,b=c,再回去执行① 例如求27和15的最大公约数过程为: 27÷15 余1215÷12余312÷3余0因此,3即为最大公约数 #include void main() /* 辗转相原创 2017-08-09 10:21:40 · 367 阅读 · 0 评论 -
练习Vector-1
练习STL,练习的网址戳我Vector Declaration:定义 vector<int>v; (creates an empty vector of integers) Size:求大小 int size=v.size(); Pushing an integer into a vector:存入数值 v.push_back(x);(where x is an integer.The siz原创 2018-04-10 20:33:55 · 184 阅读 · 0 评论 -
2017-like Number
点击打开链接 D - 2017-like Number Time limit : 2sec / Memory limit : 256MB Score : 400 points Problem Statement We say that a odd number N is similar to 2017 when both N and (N+1)⁄2 a原创 2017-12-31 16:28:11 · 316 阅读 · 0 评论 -
选择排序、冒泡排序、直接插入排序
选择排序 时间复杂度 O(n^2) 选择排序是给每个位置选择当前元素最小的,比如给第一个位置选择最小的,在剩余元素里面给第二个元素选择第二小的,依次类推,直到第n-1个元素,第n个元素不用选择了,因为只剩下它一个最大的元素了。那么,在一趟选择,如果一个元素比当前元素小,而该小的元素又出现在一个和当前元素相等的元素后面,那么交换后稳定性就被破坏了。比较拗口,举个例子,序列5 8 5 2 9,原创 2017-12-08 22:27:52 · 269 阅读 · 0 评论 -
直接输出数组的最大值或者最小值
数组的最大最小值,一直都是用for循环一遍,现在可以写的简单一点,时间复杂度应该差不多,但是这个不需要写那么多。 #include using namespace std; int main() { int a[10]; int n; scanf("%d",&n); for(int i=1;i<=n;i++) scanf("%d",&a[i]);原创 2017-10-12 19:26:00 · 1556 阅读 · 0 评论 -
codeblocks的安装和使用
codeblocks下载链接http://pan.baidu.com/s/1qYsRjdE 然后正常安装 使用方法建议这个点击打开链接 不过建议选c++原创 2017-11-04 16:03:42 · 374 阅读 · 0 评论 -
stl set
set的主要作用就是唯一性,相同的只存一次。下面是转载以为大佬的博客。 转载大佬的博客 1.关于set C++ STL 之所以得到广泛的赞誉,也被很多人使用,不只是提供了像vector, string, list等方便的容器,更重要的是STL封装了许多复杂的数据结构算法和大量常用数据结构操作。vector封装数组,list封装了链表,map和set封装了二叉树等,在封装这些数据结转载 2017-09-10 09:40:36 · 221 阅读 · 0 评论 -
表达式求值基本构架
转了一个大神的博客,如果大神看见了,勿怪,我想自己纪念一下,只是敬仰!大神的博客 两种情况: 1. 根据输入的算数表达式,如(56-20) /(4+2), 先转化为后缀表达式(逆波兰式)56#20#-4#2#+/ 因为输入的数字有多位数的(56),所以数之间用#隔开,然后根据后缀表达式求值。 2.根据输入的算数表达式,直接进行求值。 对于情况1: 转转载 2017-09-03 19:09:14 · 262 阅读 · 0 评论 -
算法复杂度(时间和空间)
来源:点击打开链接 算法的时间复杂度和空间复杂度合称为算法的复杂度。 1.时间复杂度 (1)时间频度 一个算法执行所耗费的时间,从理论上是不能算出来的,必须上机运行测试才能知道。但我们不可能也没有必要对每个算法都上机测试,只需知道哪个算法花费的时间多,哪个算法花费的时间少就可以了。并且一个算法花费的时间与算法中语句的执行次数成正比例,哪个算法中语句执行次数多,它花费时间就多。一个算法中的转载 2017-08-07 11:31:21 · 436 阅读 · 0 评论 -
C++中的string类的用法总结
内容来源 1.string类的输入操作(string类重载运算符operator>>用于输入,同样重载运算符operator operator是C++的关键字,它和运算符一起使用,表示一个运算符函数,理解时应将operator=整体上视为一个函数名。 这是C++扩展运算符功能的方法。关于operator的更多内容不在这里详细说明 string str1; cin >转载 2017-07-26 14:18:37 · 351 阅读 · 0 评论 -
练习Vector-2
练习STL,练习的网址戳我Vector erase(int position):删除一个 Removes the element present at position. Ex: v.erase(v.begin()+4); (erases the fifth element of the vector v) 删除第五个元素 erase(int start,int end):删除连续多个 Re原创 2018-04-10 20:34:59 · 128 阅读 · 0 评论