学习建议
文章平均质量分 67
梧桐下的四叶草
这个世界并没有我看上去的那么简单,人各有命,上天注定。有人天生为王,有人落草为寇。脚下的路,如果不是你自己的选择。那这旅程的终点在哪儿,也没人知道。你会走到哪儿,会碰到谁。都不一定。
展开
-
20条编程经验
1. 估算解决问题所需要的时间。 不要怕,承认吧!我曾见过一些程序员为了解决一个特殊问题而坐在显示器前面8小时。为自己定一个时间限制吧,1小时、30分钟或甚至15分钟。如果在这期间你不能解决问题,那就去寻求帮助,或到网上找答案,而不是尝试去做“超级堆码员”。 2. 编程语言是一种语言,只是一种语言。 随着时光推移,只要你理解了一种语言的原理,你会发现各种语言之间的相似之处转载 2015-01-31 10:57:26 · 523 阅读 · 0 评论 -
RMQ算法分析
转载自:大神养成中.....RMQ算法,是一个快速求区间最值的离线算法,预处理时间复杂度O(n*log(n)),查询O(1),所以是一个很快速的算法,当然这个问题用线段树同样能够解决。问题:给出n个数ai,让你快速查询某个区间的的最值。算法分类:DP+位运算算法分析:这个算法就是基于DP和位运算符,我们用dp【i】【j转载 2015-11-26 12:08:59 · 272 阅读 · 0 评论 -
理解C++ dynamic_cast
转载自:http://www.cnblogs.com/weidagang2046/archive/2010/04/10/1709226.htmlTodd.log - a place to keep my thoughts on programming理解C++ dynamic_cast在面向对象程序设计中,有时我们需要在运行时查询一个对象是否能作为某转载 2015-12-31 16:54:45 · 304 阅读 · 0 评论 -
数学和编程
转载自:http://kb.cnblogs.com/page/524548/ 好些人来信问我,要成为一个好的程序员,数学基础要达到什么样的程度?十八年前,当我成为大学计算机系新生的时候,也为同样的问题所困扰。面对学数学,物理等学科的同学,我感到自卑。经常有人说那些专业的知识更加精华一些,难度更高一些,那些专业的人毕业之后如果做编程工作,水平其实转载 2016-01-19 21:40:17 · 511 阅读 · 0 评论 -
C++中的单例模式
转载自:http://blog.csdn.net/hackbuteer1/article/details/7460019 单例模式也称为单件模式、单子模式,可能是使用最广泛的设计模式。其意图是保证一个类仅有一个实例,并提供一个访问它的全局访问点,该实例被所有程序模块共享。有很多地方需要这样的功能模块,如系统的日志输出,GUI应用必须是单鼠标,MODEM的联接需要一条且只需转载 2015-12-21 22:47:11 · 359 阅读 · 0 评论 -
三分搜索法
二分法作为分治中最常见的方法,适用于单调函数,逼近求解某点的值。但当函数是凸性函数时,二分法就无法适用,这时三分法就可以“大显身手”~~ 如图,类似二分的定义Left和Right,mid = (Left + Right) / 2,midmid = (mid + Right) / 2; 如果mid靠近极值点,则Right = midmid;否则(即midmid靠近转载 2015-12-07 21:18:48 · 806 阅读 · 0 评论 -
堆与堆排序
转载自:http://www.cnblogs.com/AndyJee/p/4612821.html(算法)堆与堆排序主要内容:1、什么是堆?2、如何建堆3、堆排序4、参考代码 一、什么是堆?“堆”是个很有趣的数据结构,是个完全二叉树。“堆”的特性:每个节点的键值一定总是大于(或小于)它的父节点(大于:称为“最大堆”,小于:称为“最小堆”),或者说转载 2016-01-09 17:35:28 · 403 阅读 · 0 评论 -
如何写出正确的二分查找?
如何写出正确的二分查找?——利用循环不变式理解二分查找及其变体的正确性以及构造方式转载自:http://www.cnblogs.com/wuyuegb2312/archive/2013/05/26/3090369.html#序言 本文以经典的二分查找为例,介绍如何使用循环不变式来理解算法并利用循环不变式在原始算法的基础上根据需要产生算法的变体。谨以本文献给在理解算法思路时转载 2016-03-31 21:37:20 · 2017 阅读 · 2 评论 -
Binary Search(二分)
Binary search is one of the fundamental algorithms in computer science. In order to explore it, we’ll first build up a theoretical backbone, then use that to implement the algorithm properly and avoid转载 2016-03-24 21:55:46 · 488 阅读 · 0 评论 -
求一个字符串的hash值
转载自:http://www.cnblogs.com/jiu0821/p/4554352.html求一个字符串的hash值:•现在我们希望找到一个hash函数,使得每一个字符串都能够映射到一个整数上•比如hash[i]=(hash[i-1]*p+idx(s[i]))%mod•字符串:abc,bbc,aba,aadaabac•字符串下标从0开始•先把a映射为1,b映射为2,c转载 2016-04-28 14:37:52 · 6798 阅读 · 0 评论 -
容斥原理
转载自:http://www.cppblog.com/vici/archive/2011/09/05/155103.html看完这个文章的总结是,奇数个数相交就是相加,偶数个就是相减,就是容斥原理。容斥原理(翻译)前言:这篇文章发表于http://e-maxx.ru/algo/inclusion_exclusion_principle转载 2016-04-18 17:58:14 · 725 阅读 · 0 评论 -
关于map与set的count的时间复杂度(个人观点,不正确请指出)
关于map与set的count的时间复杂度 最近在福州oj上做了一道Problem 2227 邮票,用了set.count来做就超时了,结果用map直接映射的话就过了。所以我就怀疑count的时间复杂度并非是nlogn,最后突然想到count的时间复杂度应该是O(nlogn+(所查询的值的长度)),解析在下面: 因为map与set都是红黑树的结构,而且在二分的时候只是找到一个位原创 2016-04-20 09:58:08 · 9191 阅读 · 7 评论 -
【POJ2887】【块状链表】Big String
【POJ2887】【块状链表】Big String转载自:http://www.cnblogs.com/hoskey/p/4322417.htmlDescriptionYou are given a string and supposed to do some string manipulations.InputThe fir转载 2016-04-22 11:32:10 · 598 阅读 · 0 评论 -
60个国外免费3D模型下载网站
原文地址:60个国外免费3D模型下载网站作者:JavenCGToday, 3D models are used in a wide variety of industries. The movie industry uses them as characters and objects for animated and real-life motion pictures. The转载 2016-06-22 18:46:34 · 10002 阅读 · 0 评论 -
3D空间的左手坐标系和右手坐标系的区别
一直没有搞懂左右手坐标系的区别,现在发现以前数学老师教我们辨别的方法原来是不规范的,怪不得我一直搞不懂。(可能是自己太蠢吧)原创 2016-08-26 17:11:39 · 5481 阅读 · 0 评论 -
ACM题集以及各种总结大全!
(转载)ACM题集以及各种总结大全! 虽然退役了,但是整理一下,供小弟小妹们以后切题方便一些,但由于近来考试太多,顾退役总结延迟一段时间再写!先写一下各种分类和题集,欢迎各位大牛路过指正。 一.ACM入门 关于ACM 百度百科连接 杭州电子科技大学(hdu)ACM题目原创 2015-09-27 18:09:50 · 600 阅读 · 0 评论 -
C++OJ提交题目中的语言选项里G++与C++的区别
G++?首先更正一个概念,C++是一门计算机编程语言,G++不是语言,是一款编译器中编译C++程序的命令而已。那么他们之间的区别是什么?在提交题目中的语言选项里,G++和C++都代表编译的方式。准确地说,选择C++的话,意味着你将使用的是最标准的编译方式,也就是ANSI C++编译。如果你使用的是G++的话,意味着你将使用GNU项目中最平凡适用人群最多的编译器(其实也就是我转载 2015-12-11 20:08:34 · 462 阅读 · 0 评论 -
算法与追MM
转载:http://topic.csdn.net/u/20080610/00/f6f38960-492c-4070-9bf0-e3a06c75df31.html动态规划,基本上就是说: 你追一个MM的时候,需要对该MM身边的各闺中密友都好,这样你追MM这个问题就分解为对其MM朋友的问题,只有把这些问题都解决了,最终你才能追到MM。 该方法适用于聪明的MM,懂得“看一个人,不是看转载 2015-11-02 13:26:00 · 401 阅读 · 0 评论 -
用算法和数学奠定专业基础
地址:http://blog.csdn.net/sxhelijian/article/details/25093481 用算法和数学奠定专业基础 一个程序设计的初学者,在刚刚开始学习时,会认为编程中语言是最重要的。没有语言,没有掌握好编程语言,写不出程序来。而后又知道熟练运用语言仅仅是学会了一种表达的方式而已,如同一个三岁的小孩,空有伶牙俐齿,说着幼稚的话。小孩要说出成熟转载 2015-01-18 16:56:58 · 1067 阅读 · 0 评论 -
中缀表达式转后缀表达式
中缀表达式转后缀表达式思路: 1:初始化一空栈,用来对符号进出栈使用 2:遇到“+ - * / ("进栈 3:若是 + 号或 - 号在*或/的后面(就是栈顶),先将*或/出栈,再+或-出栈 4:遇到右括号就一直出栈,直到到达左括号后结束 5:最后将栈清空(因为循环结束后栈中还有符号元素没出栈)#include using namespace原创 2015-04-10 18:01:27 · 632 阅读 · 0 评论 -
C++类构造函数初始化列表
转载C++类构造函数初始化列表构造函数初始化列表以一个冒号开始,接着是以逗号分隔的数据成员列表,每个数据成员后面跟一个放在括号中的初始化式。例如:class CExample {public: int a; float b; //构造函数初始化列表 CExample(): a(0),b(8.8) {}原创 2015-04-23 11:04:32 · 474 阅读 · 0 评论 -
oj上做题的多次输入
1秒(s) = 1000毫秒(ms)。1s能循环多少次跟机器有关。配置好的机器运行速度快。另外,也跟for循环内的代码有关--for循环内执行十几条语句,和空的for循环,一秒钟能执行的循环次数肯定是不一样的。oj上做题 cin >> k的返回值设定与scanf不一样。cin >> k里可以认为读数据成功返回true,读数据失败返回false。scanf从文件读数据失败不是返回fals原创 2015-04-23 10:18:37 · 1564 阅读 · 0 评论 -
基姆拉尔森计算公式
转载:C#根据日期计算星期几 -- 基姆拉尔森计算公式今天在园子里逛,发现了个好玩的东西,用基姆拉尔森计算公式来根据日期计算未来日子是星期几~首先看下百度百科的基姆拉尔森计算公式定义: 基姆拉尔森计算公式 W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400) mod 7 在公式中d表示日期中的日数,m表示月份数,y表示年数原创 2015-04-20 15:40:14 · 1811 阅读 · 0 评论 -
最长上升子序列nlogn算法
转载: 最长上升子序列nlogn算法最长上升子序列nlogn算法在川大oj上遇到一道题无法用n^2过于是,各种纠结,最后习得nlogn的算法最长递增子序列,Longest Increasing Subsequence 下面我们简记为 LIS。排序+LCS算法 以及 DP算法就忽略了,这两个太容易理解了。假设存在一个序列d[1..9] = 2 1原创 2015-04-23 11:42:51 · 551 阅读 · 0 评论 -
STL 堆heap的用法
STL中并没有把heap作为一种容器组件,heap的实现亦需要更低一层的容器组件(诸如list,array,vector)作为其底层机制。Heap是一个类属算法,包含在algorithm头文件中。虽然STL中关于heap默认调整成的是大顶堆,但却可以让用户利用自定义的compare_fuction函数实现大顶堆或小顶堆。heap的低层机制vector本身就是一个类模板,heap基于vector便实转载 2015-05-20 16:51:32 · 15267 阅读 · 2 评论 -
01背包问题和完全背包问题
地址:http://blog.csdn.net/kangroger/article/details/38864689 01背包问题和完全背包问题在hihocoder上面的题目中看到的这个问题,总结一下。先看01背包问题。01背包问题:一个背包总容量为V,现在有N个物品,第i个 物品体积为weight[i],价值为value[i],现在往背包里面装东西,怎么装能使背包转载 2015-06-01 17:21:46 · 581 阅读 · 0 评论 -
树状数组区间求和三种模型
地址:http://blog.csdn.net/q573290534/article/details/6664454树状数组在区间求和问题上有大用,其三种复杂度都比线段树要低很多……有关区间求和的问题主要有以下三个模型(以下设A[1..N]为一个长为N的序列,初始值为全0):(1)“改点求段”型,即对于序列A有以下操作:【1】修改操作:将A[x]的值加上c;转载 2015-06-05 19:27:28 · 454 阅读 · 0 评论 -
并查集详解 (转)
并查集是我暑假从高手那里学到的一招,觉得真是太精妙的设计了。以前我无法解决的一类问题竟然可以用如此简单高效的方法搞定。不分享出来真是对不起party了。(party:我靠,关我嘛事啊?我跟你很熟么?)来看一个实例,杭电1232畅通工程首先在地图上给你若干个城镇,这些城镇都可以看作点,然后告诉你哪些对城镇之间是有道路直接相连的。最后要解决的是整幅图的连通性问题。比如随意给你两个点转载 2015-05-24 18:23:07 · 342 阅读 · 0 评论 -
ACM对拍程序
这里转载汇总了三篇blog,谢谢原著者。。ACM对拍程序过程。。。一、用随机程序生成符合题目的输入数据文件名为in.txt如何产生随机数:http://www.cnblogs.com/lvsi/archive/2011/04/21/2024079.html二、用AC的程序和你的程序分别跑数据in.txtAC程序生成out1.txt转载 2015-08-16 15:27:49 · 427 阅读 · 0 评论 -
快速判断一个数能否被1、2、3、4、5、6、7、8、9、10、11、12、13、17、19、23等整除的规律总结
快速判断一个数能否被1、2、3、4、5、6、7、8、9、10、11、12、13、17、19、23等整除的规律总结(1) 1与0的特性: 1是任何整数的约数,即对于任何整数a,总有1|a. 0是任何非零整数的倍数,a≠0,a为整数,则a|0. (2) 若一个整数的末位是0、2、4、6或8,则这个数能被2整除。 (3) 若一个整数的数字和能被3整转载 2015-09-06 23:06:19 · 3348 阅读 · 0 评论 -
spfa 模板
#include #include #include #include #include using namespace std; const int maxn=300001; const int inf =0x7ffffff; struct edge { int from,to,w,next; }e[1000001]; int h转载 2015-10-16 16:44:20 · 361 阅读 · 0 评论 -
scanf用法
scanf是一个匹配模式的函数,例如:scanf("%d and %d",&a,&b);那我们输入的格式就是:1 and 2。那scanf("\n");就要匹配换行符啦过滤空格、制表符、回车等输入,也就是说scanf("%d\n", &i);printf("%d\n", i);你输入一个数后,它是不会立即显示的,要等再接收到一个非(空格、制表符、回车)的输入scanf语句才结原创 2015-09-22 23:44:02 · 485 阅读 · 0 评论 -
STL源码学习----lower_bound和upper_bound算法
转载: STL中的每个算法都非常精妙,接下来的几天我想集中学习一下STL中的算法。 ForwardIter lower_bound(ForwardIter first, ForwardIter last,const _Tp& val)算法返回一个非递减序列[first, last)中的第一个大于等于值val的位置。 ForwardIter upper_bound(原创 2015-09-24 18:18:04 · 359 阅读 · 0 评论 -
大白-Dijksta模板
这个模板更加直观。#include#include#include#include#include#include#includetypedef long long ll;using namespace std;#define T 555#define maxn 123#define inf 0x3f3f3f3fstruct Edge{ int from,to原创 2015-11-22 16:32:35 · 371 阅读 · 0 评论 -
oj网站
华南农业大学 (ac代码能分享)oj.jzxx.net 湖南师大附中https://vijos.org武汉大学http://acm.whu.edu.cn/blog/index.php平顶山acmhttp://acm.pdsu.edu.cn/电子科大中山学院 (答案错误提示全面)http://acm.two.moe:808/Judge原创 2015-03-12 11:34:36 · 3163 阅读 · 2 评论