自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

SpringWar的专栏

编程心得,优秀博文,有原创,有转载,欢迎!

  • 博客(101)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 岁月划过生命线——考研工作篇

考研工作篇:        这是一个很重要的部分,但不知道该怎么写,怕会误导他人,每个人都有自己的想法。这也只是我自己的一点经历与认识,分享给大家,仅供参考。        这个应该也是很多人纠结的问题,我刚开始上大学时是没有读研打算的,当我发现更广阔的世界后,渐渐对研究生也产生了兴趣,读研是否能够更有利于自己的发展呢,时间成本计算,正确的把握认识。当我大三暑假实习时,我还在纠结考研和工作

2016-02-29 18:30:08 1374

原创 岁月划过生命线——大三下

这学期是我成长最快的一个学期了,认识了很多的牛人,发现了更广阔的世界,因为要找实习工作,从大学迈向社会,初入社会,真的会使人成长得非常快。        学期初,听上一级的优秀学长给我们做报告,有保研名校的,有留学的,也有签到BAT的,感觉很励志。其中数据如下,学院400多人(不含师范生),保研27个,外加两个支教保研名额,共29个保研,有40多人考研,考上研究生的有十几个人,大概三分之一左右

2016-02-23 21:25:21 1113

原创 岁月划过生命线——大三上

转眼就到了大三,成为名符其实的学长了,感觉大学过了一半,但何止是一半,感觉大学都快要结束了的节奏。        大三可以说是最重要的一个时期,要为自己的人生做规划打算,前面的学习都只是积累,现在快要到了冲刺爆发,产生质变的阶段了。        当然,大三仍有不少的课程,这也是大学最后学习的一年,可是悲剧的是,我大三还是挂了一科,为什么我挂的都是必修课!这也导致我后面心情一直很压抑,因为

2016-02-23 19:39:14 986

原创 岁月划过生命线——大二下

最近知乎看多了,写的东西难免有些鸡汤,一半经验一半鸡汤吧,我会把值得记录的事情与经验心得写下来,如果只写叙事文也挺无聊的。知乎上的干货还是挺多的,在那上面能接触到不少牛人,去了解他们的经历,扩展自己的眼界,还是挺有帮助的。        记得大二上学期期末的时候,参加了第一次比赛(校级以上),第一次面试,第一次做简历,正是期末考试的时候,上午考完试,买了两个饼一瓶水,就急急忙忙带着自己做的简陋

2016-02-16 21:42:40 958

原创 岁月划过生命线——大二上

听过很多道理,却依然过不好这一生。        有些东西不去亲身经历体会,永远无法了解其内在意义。        大二上学期,退出了学生会,社团,班委也没再担任,情商不高的我,不太适合与各种各样的人打交道。        至于退出含弘工作室,的确是自己有点傻,其中一个原因就是因为我玩魔兽很着迷,要经常打副本什么的,玩网游的应该都知道,为了不耽误公会副本进度,每天晚上7点到11点都要在

2016-01-09 12:58:49 1061

原创 岁月划过生命线——大一下

大一下学期同样很忙,这时我主动申请退出了学生会,青春缙云网,具体的原因是因为这并不是我想要的生活,我没有在学生会里学到什么东西,并且因为入党积极分子培训课程与学生会开会冲突,一学期我并没有融入到学生会里面,因为是校学生会,各种学院的人都有,相互接触的机会不多,所以我也并没有认识多少人,在给部长写的总结中是这样写的:“刚进入大学的我,充满了热情与信心,什么都想干,什么都尝试,学生会、社团报了好多个,

2015-12-23 22:14:24 839

原创 岁月划过生命线——大一上

三年的高中生活结束,高中并没有多么紧张,同样该玩玩该学学,高考没有发挥好,并且当年的一本线是582分,所以基本上是卡着分数线进来的,幸亏有自主招生加20分过一批线录取的资格,挺幸运的,说起来也真是缘分,当年的一切仍然历历在目。然后被第一志愿计算机科学与技术专业录取,从此,开始了我的大学生活。        9月4号,踏上了学校的旅程——重庆,经过了28个小时的火车,到达重庆,第一感觉真的是热,

2015-12-17 22:57:13 1058

原创 岁月划过生命线——记我的大学生活(前言)

转眼就到了大四,回顾起自己的大学生活,虽并无传奇色彩,普普通通,但也别有一番滋味。真的很庆幸能够来到西南大学,从不适应到逐渐喜欢上她,这也将是我一生的骄傲与财富,每个人都应该热爱自己的母校。大学生活对每个人来说都是最宝贵的经历,每个人的经历也都各不相同,回顾一下,记录下来,也可以留作纪念,等到以后可以回味。或许这段经历对学弟学妹们有所帮助,其中的一些事情,能够使你们少走些弯路。大学期间,我

2015-11-11 19:06:54 3632 1

转载 JVM调优总结

堆大小设置JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。我在Windows Server 2003 系统,3.5G物理内存,JDK5.0下测试,最大可设置为1478m。典型设置:java -Xmx3550m -Xms355

2015-10-18 18:03:35 451

原创 比较幸运的收到了两份offer

好久没来更新博客了,最近一直在忙着准备校园招聘,关于考研和工作的问题上也最终选定了先去工作,多积累些工作经验,找个好点的平台去发展一下,在IT技术类专业中,大学毕业要么出国,要么去工作,这两种选择比较好,国内的科研环境只有顶尖学校才比较好,考不上清华,中科院还是去工作吧,只要有平台,在哪学都一样,如果以后有机会的话还可以出国深造一下(这里先YY一下)        校招过程中深深感到了自己的不

2015-10-05 18:06:51 1168

原创 程序员的十个层次

看到了这篇很棒的文章,对我的感触颇大,分享给大家,部分内容甚至会颠覆你的世界观,不得不佩服该作者的卓识远见,当然,在现有的科学内,不能证明它是正确的,也不能证明它是错误的。这也是一个技术类程序员的发展方向,究竟可以发展到哪个层次,就要看个人的努力与天赋了,同时也为我们指明了方向,知道世界远不止这么简单,对自己的发展还是有好处的。自西方文艺复兴以来,中国在自然科学方面落后西方

2015-09-05 18:18:10 866

原创 算法导论笔记——快速排序

快速排序:快速排序是最常用的算法之一,空间复杂度为O(logn),时间复杂度为O(nlogn),最坏情况下为O(n2)快速排序使用分治策略,特点是每次找一个主元,根据主元与数组元素的大小,将数组分为三部分,如数组A[p...r],主元q,分为A[p...q-1],q,A[q+1...r]三部分。寻找合适的主元是算法优化的关键,最初的快速排序将末位的元素作为主元,如果主元是数组中最大值或

2015-09-05 11:26:13 947

原创 java类的初始化顺序

对于静态变量、静态初始化块、变量、初始化块、构造器,它们的初始化顺序依次是(静态变量、静态初始化块)>(变量、初始化块)>构造器。我们也可以通过下面的测试代码来验证这一点:public class InitialOrderTest {// 静态变量public static String staticField = "静态变量";// 变量public String fie

2015-08-31 14:46:14 701

转载 java垃圾回收算法

Java ,C#语言与C/C++语言一个很大的区别是java与C#具有自动垃圾回收机制。C++程序员经常需要绞尽脑汁的分析哪里出现了内存泄漏。而在java,C#中,虽然有时也会出现内存泄漏,但大部分情况下程序员不需要考虑对象或者数据何时需要被销毁。因此程序员不会因为错误的释放内存而导致程序崩溃。垃圾回收的缺点是加大了程序的负担,有可能影响程序的性能。1.垃圾收集器的主要功能有(1)    

2015-08-28 17:14:31 770

原创 生命不息,战斗不止

经过了一段时间的思考,与周围人的交流,在网上阅读大神的经历,确实是很励志,watashi、byvoid、楼天城、王垠等等,包括中科院的师兄,伯克利大学的学长,哈哈,说出来我自己都觉得自豪,充满了正能量,眼界开阔了很多,感觉自己大学所做的与他们所做的,差了好多个档次,看了byvoid(郭家寶)阿里面试结果截图,之前在网上火了很长一段时间,天才,大牛,神人也!小学三年级开始学编程,高中三年

2015-08-26 15:20:21 1851

原创 清华梦的粉碎—写给清华大学的退学申请 /王垠

王垠,四川大学97级本科毕业,保送到清华大学计算机系直博。期间曾在清华大学计算机系软件所就读,主要进行集成电路布线算法的研究。在此期间,他因《完全用GNU/Linux工作》一文和对TeX的推广等“非研究成果的业余东西”而出名。 在只剩一年就要博士毕业的时候,他申请退学,并将1万7千余字的“退学申请书”(题为清华梦的粉碎)公布在网上,引起舆论界一时对教育体制、理想主义等的热议

2015-08-25 21:00:01 1568

转载 Java常见面试题

虽然简单,但挺实用的,基础要学好。1.  Java中sleep和wait的区别① 这两个方法来自不同的类分别是,sleep来自Thread类,和wait来自Object类。sleep是Thread的静态类方法,谁调用的谁去睡觉,即使在a线程里调用b的sleep方法,实际上还是a去睡觉,要让b线程睡觉要在b的代码中调用sleep。② 锁: 最主要是sleep方

2015-08-20 15:58:52 590

原创 压死骆驼的最后一根稻草——写下自己的阶段感受与总结

感觉是应该写点东西了,这段时间一直在疑惑,关于考研的问题,其实心里也明白,只要自己实力强,到哪都有希望,不过毕竟想有个更好的平台,更好的学校罢了,最近在浏览一些牛人的百科时,总是会很留意的看下是哪所院校毕业的,也无一例外的都是国内外的一流名校,真的很羡慕的想去那样的大学,但是自己冷静下来思考一下,然而连个高数题都不会做的我又有什么资格谈考研呢。其实的确有些后悔,自己大学没能够好好学习公

2015-08-13 17:35:54 2786 2

转载 数据结构基础(24) --红黑树的设计与实现(下)

完整源代码: http://download.csdn.net/detail/hanqing280441589/8450041 红黑节点设计与实现[cpp] view plaincopytemplate typename Comparable>  class RedBlackNode  {      friend class RedBlackTree;  /

2015-08-07 15:56:28 547

转载 数据结构基础(23) --红黑树的设计与实现(中)

Insert完善    根据规则4, 新增节点必须为红; 根据规则3, 新增节点之父节点必须为黑. 示例:    (1)插入16(红色)/55(红色), 则既不用旋转, 也不用重新染色    (2)插入82(红色), 则违反了红黑规则, 需要进行动态的调整; 红黑树所需的处理1.单旋转     新插入的X与其父P都是红色的, 而且X还是G

2015-08-07 15:55:05 658

转载 数据结构基础(22)--红黑树的设计与实现(上)

红黑树是一种自平衡的二叉查找树,是在计算机科学中用到的一种数据结构,典型的用途是实现关联数组(C++ STL 中的map/set)。它是在1972年由Rudolf Bayer发明的,他称之为"对称二叉B树",它现代的名字是在 Leo J. Guibas 和 Robert Sedgewick 于1978年写的一篇论文中获得的。红黑树虽然很复杂,但它的操作有着良好的最坏情况运行时间,并且在实践中是高效

2015-08-07 15:52:58 633

转载 数据结构基础(21) --DFS与BFS

DFS    从图中某个顶点V0 出发,访问此顶点,然后依次从V0的各个未被访问的邻接点出发深度优先搜索遍历图,直至图中所有和V0有路径相通的顶点都被访问到(使用堆栈). [cpp] view plaincopy//使用邻接矩阵存储的无向图的深度优先遍历  template typename Type>  void Graph::DFS()  {    

2015-08-07 15:50:22 497

转载 数据结构基础(20) --图的存储结构

图的结构定义    图是由一个顶点集 V 和一个弧集 E构成的数据结构。     Graph = (V , E )   其中,E = {| v,w∈V 且 P(v,w)} 表示从 v 到 w 的一条弧,并称 v 为弧尾,w 为弧头。谓词 P(v,w) 定义了弧 的意义或信息。   由顶点集和边集构成的图称作无向图。   如果”弧”是有方向的,则称由顶点集和弧集构成的图为有向图。

2015-08-07 15:49:07 721

转载 数据结构基础(19) --堆与堆排序

完全二叉树 首先让我们回顾一下完全二叉树的两个性质:  性质1:具有n个结点的完全二叉树的深度为[logn](向下取整)+1。  性质2:若对含 n 个结点的完全二叉树从上到下且从左至右进行 1 至 n 的编号,则对完全二叉树中任意一个编号为 i 的结点:    (1) 若 i=1,则该结点是二叉树的根,无双亲,否则,编号为 [i/2](向下取整)的结点为其双亲结点

2015-08-07 15:48:02 624

转载 数据结构基础(18) --哈希表的设计与实现

哈希表    根据设定的哈希函数 H(key)和所选中的处理冲突的方法,将一组关键字映射到一个有限的、地址连续的地址集 (区间) 上,并以关键字在地址集中的“映像”作为相应记录在表中的存储位置,如此构造所得的查找表称之为“哈希表”。 构造哈希函数的方法1. 直接定址法(数组)  哈希函数为关键字的线性函数H(key) = key 或者 H(key) = a*key + b 

2015-08-06 15:31:41 947

转载 数据结构基础(17) --二叉查找树的设计与实现

二叉排序树的特征二叉排序树或者是一棵空树,或者是具有如下特性的二叉树:    1.每一元素都有一个键值, 而且不允许重复;    2.若它的左子树不空,则左子树上所有结点的值均小于根结点的值;    3.若它的右子树不空,则右子树上所有结点的值均大于根结点的值;    4.它的左、右子树也都分别是二叉排序树。二叉排序树保存的元素构造[cpp]

2015-08-06 15:30:26 742

转载 数据结构基础(16) --树与二叉树

树的基本术语1.结点:{数据元素+若干指向子树的分支}2.结点的度:分支的个数(子树的个数)3.树的度:树中所有结点的度的最大值4.叶子结点:度为零的结点5.分支结点:度大于零的结点(包含根和中间结点)6.(从根到结点的)路径:由从根到该结点所经分支和结点构成;7.结点的层次:假设根结点的层次为1,则根的孩子为第2层,如果某节点在第L层,则其子树的根在L+1层。8.

2015-08-06 15:29:06 540

转载 数据结构基础(15) --基数排序

基数排序是一种借助“多关键字排序”的思想来实现“单关键字排序”的内部排序算法。实现多关键字排序通常有两种作法:   最低位优先法(LSD)    先对K[0]{基数的最低位}进行排序,并按 K(0) 的不同值将记录序列分成若干子序列之后,分别对 K[1] 进行排序,..., K[d-1]依次类推,直至最后对最次位关键字排序完成为止。  最高位优先法(MSD)    先对 K[d

2015-08-06 15:28:01 565

转载 数据结构基础(14) --链式队列的设计与实现

链式队列是基于单链表的一种存储表示, 其形状如下图所示:     (队列的队头指针指向单链表的第一个结点, 队尾指针指向单链表的最后一个结点, 注意没有无用的空[头/尾]节点)    用单链表表示的链式队列特别适合于数据元素变动比较大的情况, 而且不存在队列满而产生溢出的情况; 链式队列结点构造:[这次我们将节点构造成了类LinkQueue的嵌套类]

2015-08-06 15:26:53 616

转载 数据结构基础(13) --链式栈的设计与实现

采用链式存储的栈成为链式栈(或简称链栈), 链栈的优点是便于多个栈共享存储空间和提高其效率, 且不存在栈满上溢的情况(因为链栈是靠指针链接到一起,只要内存够大, 则链栈理论上可以存储的元素是没有上限的);    与顺序栈相比, 由于顺序栈是采用的数组实现, 因此一旦数组填满, 则必须重新申请内存, 并将所有元素”搬家”, 而链栈则省略了这一”耗时耗力”的工作, 但却需要付出附加一个指针的代价;

2015-08-06 15:25:31 757

转载 数据结构基础(12) --双向循环链表的设计与实现

双向链表的操作特点:    (1) “查询” 和单链表相同;    (2)“插入” 和“删除”时需要同时修改两个方向上的指针。   但是对于双向循环链表则在表尾插入非常的迅速, 只需O(1)的时间,因为有指向前面的指针, 因此双向循环链表会很容易的找到位于表尾的元素,因此双向循环链表比较适用于频繁在表尾插入的情况.空链表:双向循环链表节点构造:

2015-08-06 15:23:49 657

转载 数据结构基础(11) --循环链表的设计与实现

循环链表:最后一个结点的指针域的指针又指回第一个结点的链表;    循环单链表与单链表的区别在于:表中最有一个节点的指针不再是NULL, 而改为指向头结点(因此要对我们原来的MyList稍作修改), 从而整个链表形成一个环.    因此, 循环单链表的判空条件不再是头结点的指针是否为空, 而是他是否等于头结点;    其实如果只是单纯的实现循环链表对单链表的性能提升是不明显的, 反

2015-08-06 15:21:59 591

转载 数据结构基础(10) --单链表迭代器的设计与实现

为了向 STL 致敬(O(∩_∩)O~), 我们模仿STL中的list的迭代器, 我们也自己实现一个MyList的迭代器, 以供遍历整个链表的所有元素:首先:Node节点需要做如下修改(注意后缀有+的代码)[cpp] view plaincopy//链表节点  template typename Type>  class Node  {      friend cl

2015-08-06 15:20:37 587

转载 数据结构基础(9) --单链表的设计与实现(2)之高级操作

链表的链接:    将第二条链表的所有内容链接到第一条链表之后, 其完整实现代码与解析如下:[cpp] view plaincopy//链表的链接  template typename Type>  void MyList::concatenate(const MyList &list)  {      if (isEmpty())//如果自己的链表为空    

2015-08-06 15:19:22 642

转载 数据结构基础(8) --单链表的设计与实现(1)之基本操作

链表简介数组的缺点:     1.元素插入:除了在数组的末尾插入元素之外,在数组的其他任何位置插入元素都需要进行数组元素的频繁移动(插入位置之后的元素都需往后移动), 时间复杂度约为O(N);     2.数组的删除:除了在数组的末尾删除元素之外,在数组的其他任何位置删除元素都需要进行数组元素的频繁移动(删除位置之后的元素都需往前移动), 时间复杂度也为O(N); 链表的特点:

2015-08-06 15:17:59 733

转载 数据结构基础(7) --循环队列的设计与实现

队列    队列简称队, 也是一种操作受限的线性表, 只允许在表的一端进行插入, 而在表的另一端进行删除.其特点为”先进先出(FIFO)”,故又称为先进先出的线性表,简单队列如图所示: 循环队列    顺序队列有一个先天不足, 那就是空间利用率不高, 会产生”假溢出”现象,即:其实队列中还有空闲的空间以存储元素, 但我们在判断队列是否还有空间时, 队列告诉我们队列已经满

2015-08-06 15:16:34 535

转载 数据结构基础(6) --顺序栈的设计与实现

栈是一种只允许在一端进行插入或删除操作的线性表.其特点为:先进后出(FILO)/后进先出(LIFO); 栈 VS. 队列    栈和队列都是动态集合, 但在栈中, 可以去掉的是最近插入的那一个,:栈实现了一种后进先出(last-in, first-out)的策略;类似的, 在队列中, 可以去掉的元素总是在集合中存在时间最长的那一个:队列实现了先进先出(first-in, first-o

2015-08-06 15:14:23 680

转载 数据结构基础(5) --归并排序

归并排序的基本思想:    将两个或两个以上的有序子序列”归并”为一个有序序列:假定待排序表含有n个记录, 则可以看成是n个有序的子表, 每个子表长度为1, 然后两两归并, 得到[n/2]个长度为2或1的有序表,; 再量量归并, ...., 如此重复, 直到合并成为一个长度为n的有序表为止, 这种排序方法称为2-路归并排序.如图为一个2-路归并排序的一个示例:[cpp]

2015-08-06 15:12:20 582

转载 数据结构基础(4) --快速排序

快速排序是最流行的,也是速度最快的排序算法(C++ STL 的sort函数就是实现的快速排序); 快速排序(Quicksort)是对冒泡排序的一种改进。由C. A. R. Hoare在1962年提出。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数

2015-08-06 15:10:43 548

转载 数据结构基础(3) --Permutation & 插入排序

Permutation(排列组合)排列问题:设R = {r1, r2, ... , rn}是要进行排列的n个元素, Ri = R-{ri}; 集合X中元素的全排列记为Permutation(X), (ri)Permutation(X)表示在全排列Permutation(X)的每一个排列前加上前缀ri得到的排列.R的全排列可归纳定义如下:当n=1时,Permutation(R)={r

2015-08-06 15:09:13 488

C大纲——郝斌

郝斌老师的经典C语言大纲,郝斌C语言视频教程中的pdf文档。

2015-07-31

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除