总结笔记
日月人云
这个作者很懒,什么都没留下…
展开
-
memset
首先要知道memset函数是对字节为单位进行赋值的; void *memset(void *s, int ch, size_t n); 函数解释:将s中前n个字节 (typedef unsigned int size_t )用 ch 替换并返回 s 。其实这里面的ch就是ascii为ch的字符;将s所指向的某一块内存中的前n个 字节的内容全部设置为c转载 2017-10-19 23:25:54 · 195 阅读 · 0 评论 -
动态规划习题集
动态规划(英语:Dynamic programming,DP)是一种在数学、计算机科学和经济学中使用的,通过把原问题分解为相对简单的子问题的方式求解复杂问题的方法。 动态规划常常适用于有重叠子问题和最优子结构性质的问题,动态规划方法所耗时间往往远少于朴素解法。动态规划背后的基本思想非常简单。大致上,若要解一个给定问题,我们需要解其不同部分(即子问题),再合并子问题的解以得出原问题的解。 通常许多子...转载 2018-03-24 16:23:29 · 888 阅读 · 1 评论 -
最长递增子序列的三种算法
转载自:http://qiemengdao.iteye.com/blog/1660229 最长递增子序列 问题给定一个长度为N的数组,找出一个最长的单调自增子序列(不一定连续,但是顺序不能乱)。例如:给定一个长度为6的数组A{5, 6, 7, 1, 2, 8},则其最长的单调递增子序列为{5,6,7,8},长度为4.解法1:最长公共子序列法这个问题可以转换为最长公共子序列问题。如例子中的数组A{5...转载 2018-03-19 22:00:17 · 22036 阅读 · 12 评论 -
最长公共子序列
关于这类问题纠结了好几天了,看书也理解不了,自己好笨啊。上网搜搜这方面的博客,借助他人智慧来理解理解,大神太多了,挑了几篇精华且易于理解的博客加上自己的理解转载了这篇博客。推荐两篇优秀也是我的转载来源的大家可根据自己理解能力挑选或者结合理解https://blog.csdn.net/hrn1216/article/details/51534607http://blog.csdn.net/lz161...转载 2018-03-23 15:42:59 · 175 阅读 · 0 评论 -
NYOJ42
一笔画问题 时间限制:3000 ms | 内存限制:65535 KB 难度:4 描述 zyc从小就比较喜欢玩一些小游戏,其中就包括画一笔画,他想请你帮他写一个程序,判断一个图是否能够用一笔画下来。规定,所有的边都只能画一次,不能重复画。 ...原创 2018-03-10 21:35:34 · 182 阅读 · 0 评论 -
并查集详解
原文地址 :http://blog.csdn.net/niushuai666/article/details/6662911作者:飘过的小牛并查集是我暑假从高手那里学到的一招,觉得真是太精妙的设计了。以前我无法解决的一类问题竟然可以用如此简单高效的方法搞定。不分享出来真是对不起party了。(party:我靠,关我嘛事啊?我跟你很熟么?)来看一个实例,杭电1232畅通工程首先在地图上给你若干个...转载 2018-03-10 16:02:50 · 158 阅读 · 0 评论 -
关于%*n与%n
//%1d 输入:123 输出:1 只读取第一位 同理%2d 输出:12 //%*1d%d 输入:123456 输出: 23456 //%*1d%2d 输入:123456 输出:23 //%*2d%2d 输入:123456 输出:34 //%*nd 前n位不输出 //%nd 只输出前n位// scanf("%*1d%d",&m); Scanf 格式中,如果在%后面、格式...原创 2018-03-07 16:20:23 · 1018 阅读 · 0 评论 -
multiset容器erase函数的误用
《从缺陷中学习C/C++》第3章库函数问题,本章主要介绍库函数的使用中会遇到的问题。使用库函数可以降低软件开发的难度,提高代码编写的效率。本节为大家介绍multiset容器erase函数的误用。 作者:刘新浙/刘玲/王超/李敬娜 等来源:人民邮电出版社|2013-11-28 15:29 收藏 分享 3.16 multiset容器erase函数的误用...转载 2018-03-07 15:38:36 · 1801 阅读 · 0 评论 -
set容器和multiset容器
C++ STL set和multiset的使用std::set<int> s;那个s这个对象里面存贮的元素是从小到大排序的,(因为用std::less作为比较工具。)1,set的含义是集合,它是一个有序的容器,里面的元素都是排序好的,支持插入,删除,查找等操作,就 像一个集合一样。所有的操作的都是严格在logn时间之内完成,效率非常高。 set和multiset的区别是:set插入...转载 2018-03-07 15:36:30 · 196 阅读 · 0 评论 -
同余定理
同余运算及其基本性质 100除以7的余数是2,意思就是说把100个东西七个七个分成一组的话最后还剩2个。余数有一个严格的定义:假如被除数是a,除数是b(假设它们均为正整数),那么我们总能够找到一个小于b的自然数r和一个整数m,使得a=bm+r。这个r就是a除以b的余数,m被称作商。我们经常用mod来表示取余,a除以b余r就写成a mod b = r。 如果两个数a和b之差能被m整除,...转载 2018-03-06 20:38:16 · 2052 阅读 · 0 评论 -
当遇到error: stray '\241' in program错误的解决方法
意思是c/c++中的编译错误。该错误是指源程序中有非法字符,需要去掉非法字符。一般是由于从别的地方粘贴过来造成的。方法:1.把所粘的文字放到记事本里就行了 2.把出错行的空格删掉重新打一下试试。转载 2017-10-25 22:45:30 · 9378 阅读 · 0 评论 -
快速幂
快速幂这个东西比较好理解,但实现起来到不老好办,记了几次老是忘,今天把它系统的总结一下防止忘记。 首先,快速幂的目的就是做到快速求幂,假设我们要求a^b,按照朴素算法就是把a连乘b次,这样一来时间复杂度是O(b)也即是O(n)级别,快速幂能做到O(logn),快了好多好多。它的原理如下: 假设我们要求a^b,那么其实b是可以拆成二进制的,该二进制数第i位的权为2^(i-1),例转载 2017-10-21 16:46:58 · 147 阅读 · 0 评论 -
数组元素全部初始化为同一值问题
一:用memset初始化二:定义数据类型时直接初始化#include#includeusing namespace std;int main(){ int a[10],b[10],c[10]; bool map[10][10]; memset(a,0x3f,sizeof(a)); a[2]=0x3f3f3f3f; memset(map,fals原创 2017-08-14 17:05:54 · 12444 阅读 · 0 评论 -
C++中的STL中map用法详解
http://www.cnblogs.com/fnlingnzb-learner/p/5833051.html此博客讲解的可以参考map遍历map m;map::iterator it;it = m.begin();while(it != m.end()){ //it->first; //it->second; it ++; }原创 2017-10-19 23:48:26 · 147 阅读 · 0 评论 -
substr函数
百度百科讲的可以参考:https://baike.baidu.com/item/substr/10685875?fr=aladdin原创 2017-10-19 23:42:43 · 856 阅读 · 0 评论 -
01背包
转载于:无鞋童鞋http://blog.csdn.net/fx677588/article/details/689515931、动态规划(DP) 动态规划(Dynamic Programming,DP)与分治区别在于划分的子问题是有重叠的,解过程中对于重叠的部分只要求解一次,记录下结果,其他子问题直接使用即可,减少了重复计算过程。 另外,DP在求解一个问题最优解的时候,不是固定的计算合并某些...转载 2018-03-20 23:11:02 · 142 阅读 · 0 评论