自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

读书与思考的乐趣

轻松,专注,高效率,命由天,事在人为!

  • 博客(86)
  • 收藏
  • 关注

原创 管道 无法改变变量值 的问题

wqfhenanxc@ubuntu:~$ cat test.sh#!/bin/bashLines=0cat $0 | while read linedo  ((Lines++))doneecho "Number of lines read is: $Lines"exit 0wqfhenanxc@ubuntu:~$ ./test.shNumber of lin

2016-06-21 11:47:52 673

原创 java总结输入流输出流

1.什么是IO      Java中I/O操作主要是指使用Java进行输入,输出操作. Java所有的I/O机制都是基于数据流进行输入输出,这些数据流表示了字符或者字节数据的流动序列。Java的I/O流提供了读写数据的标准方法。任何Java中表示数据源的对象都会提供以数据流的方式读写它的数据的方法。        Java.io是大多数面向数据流的输入/输出类的主要软件包。

2015-07-27 11:34:30 604

原创 大型网站架构改进历程:存储的瓶颈

【编者按】本文转自博客园的 夏天的森林,在看这篇之前,大家可以移步看 大型网站架构改进历程:存储的瓶颈(一)、(二)、(三)、(四)。上文里我遗留了两个问题,一个问题是数据库做了水平拆分以后,如果我们对主键的设计采取一种均匀分布的策略,那么它对于被水平拆分出的表后续的查询操作将有何种影响,第二个问题就是水平拆分的扩容问题。这两个问题在深入下去,本系列就越来越技术化了,可能最终很多朋友读

2015-02-03 21:00:43 515

原创 设计一个类似支付宝的在线支付系统,问如何着手?

首先是最前端,与用户打交道的WEB端。考虑到用户量的问题,必然要做负载均衡。硬件或者软件都有很多解决方案,比如软件可以用开源的nginx、haproxy、lvs什么的。WEB端的基本功能是 用户服务平台、支付网关、商户服务平台(提供针对商户的订单管理功能)。在WEB后面需要一系列的服务相互配合,这里细节略去。详情可以参考各支付平台给商户的各种文档,里头可以窥知一二。服务的背后就是数

2015-01-30 12:33:15 1372

原创 数据库性能优化

1.数据库访问性能优化1.数据库的连接和关闭  访问数据库资源需要创建连接、打开连接和关闭连接几个操作。这些过程需要多次与数据库交换信息以通过身份验证,比较耗费服务器资源。ASP.NET中提供了连接池(Connection Pool)改善打开和关闭数据库对性能的影响。系统将用户的数据库连接放在连接池中,需要时取出,关闭时收回连接,等待下一次的连接请求。  连接池

2015-01-30 12:23:07 567

原创 数据库索引

强烈建议参阅链接:http://www.linezing.com/blog/?p=798#nav-1索引是对数据库表中一个或多个列(例如,employee 表的姓名 (name) 列)的值进行排序的结构。如果想按特定职员的姓来查找他或她,则与在表中搜索所有的行相比,索引有助于更快地获取信息。例如这样一个查询:select * from table1 where id=100

2015-01-30 12:17:45 411

原创 数据库事务

事务(Transaction)是并发控制的基本单位。所谓的事务,它是一个操作序列,这些操作要么都执行,要么都不执行,它是一个不可分割的工作单位。例如,银行转账工作:从一个账号扣款并使另一个账号增款,这两个操作要么都执行,要么都不执行。所以,应该把它们看成一个事务。事务是数据库维护数据一致性的单位,在每个事务结束时,都能保持数据一致性。       针对上面的描述可以看出,事务的提出主要是为

2015-01-30 12:02:42 475

原创 加密算法

通常来讲,非对称算法安全性更高,其破解难度更大,现在的数字证书就是基于非对称密钥体系。如果结合时间因素的话,再有良好的设计保障,对称算法也相当安全,比如一次一密,密码仅在一次很短的会话内有效。基于“对称密钥”的加密算法主要有:AES、DES、TripleDES、RC2、RC4、RC5和Blowfish等。“非对称密钥”的加密算法主要有:RSA、Elgamal、背包算法、ECC(椭圆

2015-01-30 11:53:22 708

原创 python学习感悟

有一天,我突然发现有一个员工,他的代码质量又好,功能完成又快,只要把他的模块跟别人联调,不仅代码不出问题,还帮别人找出很多问题。我对这个现象比较好奇,连续观察几周之后,在一次技术交谈会上,我让他说说倒底有什么神奇武功绝招可以分享出来的。他说没有什么别的可以藏起来的绝招,只是使用了Python这个工具,这个工具绝对比《葵花宝典》实用多了,因为它不用自宫,即可成功。我仔细地整理一下他分享的

2015-01-29 11:19:36 8239 1

原创 java框架个人理解

简单的说,对于一个网站来说,你从点开网页到你获取数据这个过程你知道吧。struts就是负责页面的显示处理,而hibernate则是负责对数据库的CRUD操作,从而把用户要的资源从数据库拿出显示到页面上,而spring则是这两者在耦合,事务方面做一些工作。俗称MVC三层的分工,简短说下,ssh框架总体是为了解耦合使用的,struts管理表示层,spring管理业务逻辑层,hibernate管

2015-01-29 10:21:31 551

原创 个人认为比较好听的十首英文歌曲

1.歌曲名: Hot N Cold  歌手名:Katy Perry  知道这首歌来自《鼠来宝》,让你跟着节奏摇起来哟  Hot N Cold是Katy Perry的第一张录音室专辑的第二只单曲。歌曲MV讲述的是男友在婚礼上悔婚的故事。2.歌曲名: Baby One More Time  歌手名:Britney Spears  《bab

2014-12-06 12:57:40 2943

原创 一些经典的计算机书籍

摘之:http://blog.jobbole.com/1383/以下列表中的计算机书籍(中文版)来自微博:@程序员的那些事 粉丝的推荐。按推荐次数,从高到低往下排。如果大家还有其他计算机相关的经典书籍推荐,请在评论中留言,或者在这条微博的评论中留言,我们将继续扩充这个列表。算法导论(第2版)代码大全(第2版)C++ Primer中文版(第4版)设计模

2014-12-02 13:11:16 427

原创 [品味生活]10个让人生更美好的必须技能

这里提供10个重要的人生必学技能,将让你的生活更加美好。1、战胜恐惧与接受挑战的能力 不管有多少选项可做选择,我了解到,其实仅仅就在‌‌“将来‌‌”与‌‌“过去‌‌”两者之间。如果你选择较简单的方案,没有风险、挑战和未知的东西,你就是选择了过去。显然地,那会比较安全及舒适,但你将永远无法实现更大的事情,除非你挑战你自己。那就是为什么你必须学着选择艰难

2014-11-27 16:20:30 1870

转载 李平:大型网站的灵魂——性能

摘要:大型网站打造并不是件容易的事情,即使是从小开始慢慢迭代。从本期《问底》开始,我们将为大家带来李平的大型网站打造系列,从理论和实践两个方面进行讲解。在前一篇随笔 大型网站系统架构的演化中,介绍了大型网站的演化过程,期间穿插了一些技术和手段,我们可以从中看出一个大型网站的轮廓,但想要掌握设计开发维护大型网站的技术,需要我们一步一步去研究实践。所以我打算写一个系列,从理论到实践讲述大型

2014-10-24 14:32:19 930

原创 二分查找

二分查找02 March 2011以前学的时候也没好好研究,只是大概知道思想,昨天写程序的时候发现bug了,十分惭愧,结果在网上发现了这样资料:二分查找可以解决(预排序数组的查找)问题:只要数组中包含T(即要查找的值),那么通过不断缩小包含T的范围,最终就可以找到它。一开始,范围覆盖整个数组。将数组的中间项与T进行比较,可以排除一半元素,范围缩小一半。就这样反复比较,反

2014-10-24 12:38:28 518

转载 优秀有价值的博客收藏列表(持续更新)

本文属于本人资源整理,大多数的资源来自于:我的Google Reader订阅:http://blog.csdn.net/chenyusiyuan/article/details/5945540【大学生活】优秀的有趣的博客:http://blog.csdn.net/xiaowei_cqu/article/details/8034195价值博客列表:http://b

2014-10-24 10:08:47 665

原创 解决哈希(HASH)冲突的主要方法

虽然我们不希望发生冲突,但实际上发生冲突的可能性仍是存在的。当关键字值域远大于哈希表的长度,而且事先并不知道关键字的具体取值时。冲突就难免会发 生。另外,当关键字的实际取值大于哈希表的长度时,而且表中已装满了记录,如果插入一个新记录,不仅发生冲突,而且还会发生溢出。因此,处理冲突和溢出是 哈希技术中的两个重要问题。1、开放定址法     用开放定址法解决冲突的做法是:当冲突发生时,

2014-10-24 09:43:12 463

原创 读书笔记—《算法设计与分析基础》

最近粗读了一本算法基础书,看有好多人推荐就学习学习,感觉书写的还是不错的,不敢说学到了多少新算法,至少拓展了视野,系统了知识,本书中确实有不少以前没见过没听过的算法,这些算法不一定会直接用于实际实践中,但是对思路的拓展肯定有不小帮助,而且最好的地方时,正如书中所说,写的确实很浅显易懂。    粗读了一遍,课后题也没有认真完成(实在耐不下性子),但感觉还是有必要先总结一下,以备日

2014-10-23 13:14:35 1870

原创 我所关注的一些博客

博客园:http://www.cnblogs.com/王垠:

2014-10-23 12:46:41 439

转载 一个资深HR的面试建议--不仅仅适用于应届生!

一个HR人给应届生的面试建议,关于应届生面试自我介绍、常见问题及回答、面试礼仪、技巧等,非常全面、非常专业,面试前必看,晚了后悔呀。从事人力资源工作很多年了,多多少少积累了一些经验。已经有许多同仁发表文章,讲了如何撰写简历,面试的礼仪要求等,珠玉在前,不再赘言。适逢大学毕业生进入求职阶段,特此针对面试环节谈一些看法,希望能对大家有所帮助。当然,仅为一家之言,若能抛砖引玉,则大幸也。

2014-10-22 22:01:37 1799

原创 两分钟学会在GitHub托管代码

本篇博客针对不会Git的小童鞋,大神们可以绕过,错误之处谢谢指正;关于GitHub的强大此处不在说明,知道GitHub也有一段时间了,但是一直苦于不会使用。本篇文章介绍的是如何将工程代码托管到上面;如果你还没注册GitHub账号请到https://github.com/上注册如果你已经注册GitHub账号,在你的电脑上安装了GitHub,而一直还没上传过代码

2014-10-22 21:44:32 830

转载 C++静态库与动态库

C++静态库与动态库这次分享的宗旨是——让大家学会创建与使用静态库、动态库,知道静态库与动态库的区别,知道使用的时候如何选择。这里不深入介绍静态库、动态库的底层格式,内存布局等,有兴趣的同学,推荐一本书《程序员的自我修养——链接、装载与库》。什么是库库是写好的现有的,成熟的,可以复用的代码。现实中每个程序都要依赖很多基础的底层库,不可能每个人的代码都从零开始,因此库的存在意义非

2014-10-22 21:32:55 351

转载 C++对象模型

转载地址:http://www.cnblogs.com/skynet/p/3343726.html

2014-10-22 21:30:46 368

转载 每个程序员都必读的10篇文章

作为一名Java程序员和软件开发人员,那些每个程序员都应该知道的XXX的文章教会了我不少东西,它们提供了某个特定领域的一些实用的并且有深度的信息,这些东西通常很难找到。在我学习的过程中我读到过许多非常有用的文章,我把它们添加到了书签里,方便以后阅读或者引用。我个人认为所有开发人员都能从这些文章中受益,因此我也写了篇“每个程序员都应该了解的”文章,准备分享给你们。这是我的个人收藏。在这篇文章中,你会

2014-10-22 20:37:14 385

转载 转折后的总结--2014年找工作

转折后的总结--找工作 好吧,还是忍不住做个总结,毕竟还是我人生中一次比较大的事件了。非常感谢华科,我的第二个母校能提供给我一个优秀的平台。非常感谢信息安全与保密实验室607室的老师们,给我诸多照顾,让我在找工作中脱颖而出从4月20就开始了为工作而战的准备,组建了【为了offer】群和kirin团组,一是为了集合大家的力量一起打基础,二是大家收集比较好的题目,算法,

2014-10-22 20:01:04 490

转载 2014找工作总结-机会往往留给有准备的人

转发请注明出处:http://blog.csdn.net/xiajun07061225/article/details/12844801 其实我的求职过程在十一之前就已经结束了,总体讲比较顺利。参加面试的几家公司基本都拿到了offer,分别是阿里巴巴、美团网、创新工场涂鸦移动以及华为。当时也参加了其他公司的面试,比如人人,一面过后收到了二面通知,拒了。创新工场豌豆荚一面结束后等

2014-10-22 19:54:12 601 1

转载 C++的坑真的多吗?

转载地址?先说明一下,我不希望本文变成语言争论贴。希望下面的文章能让我们客观理性地了解C++这个语言。(另,我觉得技术争论不要停留在非黑即白的二元价值观上,这样争论无非就是比谁的嗓门大,比哪一方的观点强,毫无价值。我们应该多看看技术是怎么演进的,怎么取舍的。)事由周五的时候,我在我的微博上发了一个贴说了一下一个网友给我发来的C++程序的规范和内存管理写的不是很好

2014-10-22 14:23:23 441

转载 【递归算法】人脑理解递归

递归真是个奇妙的思维方式。自打我大二学习递归以来,对一些简单的递归问题,我总是惊叹于递归描述问题和编写代码的简洁。但是总感觉没能融会贯通地理解递归,有时尝试用大脑去深入“递归”,层次较深时便常产生进不去,出不来的感觉。这种状态也导致我很难灵活地运用递归解决问题。有一天,我看到一句英文:“To Iterate is Human, to Recurse, Divine.”中文译为:“人理解迭代,神理解

2014-10-21 21:22:32 511

转载 Unix的缺陷

我想通过这篇文章解释一下我对 Unix 哲学本质的理解。我虽然指出 Unix 的一个设计问题,但目的并不是打击人们对 Unix 的兴趣。虽然 Unix 在基础概念上有一个挺严重的问题,但是经过多年的发展之后,这个问题恐怕已经被各种别的因素所弥补(比如大量的人力)。但是如果开始正视这个问题,我们也许就可以缓慢的改善系统的结构,从而使得它用起来更加高效,方便和安全,那又未尝不可。同时也希望这里对 Un

2014-10-21 20:26:47 426

转载 王垠:如何掌握程序语言

学习程序语言是每个程序员的必经之路。可是这个世界上有太多的程序语言,每一种都号称具有最新的“特性”。所以程序员的苦恼就在于总是需要学习各种稀奇古怪的语言,而且必须紧跟“潮流”,否则就怕被时代所淘汰。  作为一个程序语言的研究者,我深深的知道这种心理产生的根源。程序语言里面其实有着非常简单,永恒不变的原理。看到了它们,就可以在很短的时间之内就能学会并且开始使用任何新的语言,而不是花费很多功夫

2014-10-21 18:40:43 323

原创 面试准备的一些基础知识(搜集)

1 linux命令(1)  是用来查看所有socket连接      netstat -a 显示所有连线中的socket     netstat -t 显示所有tcp     netstat -u 显示所有udp     netstat -l 显示所有侦听中的端口(2)    查看所有的端口情况     n

2014-10-21 16:15:13 856

原创 面试中常考的现场写小程序题目

在面试中面试官常常让我们写几个小的程序,以此来考察我们的编程内功。所以在准备面试的过程中在纸上练习着写一些程序是很有必要的。下面是在面试中常考的几个题,出现频率非常之高!!!!1、完整正确的写出二分查找的算法int binary_search(int arr[],int n,int key){ assert(arr!=NULL && n>0);

2014-10-21 15:39:04 1099

转载 2013年各大小IT公司待遇,绝对真实,一线数据!(初版)

本人西电硕士,根据今年找工作的情况以及身边同学的汇总,总结各大公司的待遇如下,吐血奉献给各位学弟学妹,公司比较全,你想去的公司不在这里面,基本上是无名小公司了;无名小公司有时也很给力哦以下绝对是各大公司2013届校招的数据,少数几个是2012 2011的数据,都已经特别注明,数据真实重要性高于一切!!!2013年以前的数据来源:西电好网论坛和西电睿思论坛,应届生论坛,选进来的都是已经确认的信息

2014-10-21 14:55:16 1540

原创 最短路径算法

在准备ACM比赛的过程中,研究了图论中一些算法。首先研究的便是最短路的问题。《离散数学》第四版(清华大学出版社)一书中讲解的Dijkstra算法是我首先研究的源材料。      如何求图中V0到V5的最短路径呢?        java实现的方式如下:        第一步,根据图来建立权值矩阵:       int[][] W = {     {  0,  

2014-10-20 20:46:43 1175

原创 《程序员笔试宝典》

static:修饰变量,只能初始化一次,修饰函数是指此函数只能在本文件中调用

2014-10-03 19:48:10 389

原创 【约瑟夫】编程实现约瑟夫环

已知 n 个人(以编号1, 2, 3 ,4, 5 ,6  ... .. .n)围坐一张圆桌周围。从编号为k 的人开始报数,数到m 的那个人出列;他的下一个人又从 1开始报数,数到m的那个人又出列;依次规律重复下去,直到圆桌周围的人全部出列。请用C++编程。整个程序分为3个步骤:第一步:建立一个有n个元素的循环链表,链表是从1的编号开始的。第二步:是从链表的表头数到第 k 个

2014-10-02 20:35:59 1079

原创 【矩阵相交】矩形相交以及求出相交的区域的原理解析

问题:给定两个矩形A和B,矩形A的左上角坐标为(Xa1,Ya1),右下角坐标为(Xa2,Ya2),矩形B的左上角坐标为(Xb1,Yb1),右下角 坐标为(Xb2,Yb2)。(1)设计一个算法,确定两个矩形是否相交(即有重叠区域) (2)如果两个矩形相交,设计一个算法,求出相交的区域矩形 (1) 对于这个问题,一般的思路就是判断一个矩形的四个顶点是否在

2014-10-01 15:28:43 3586

原创 链表的反转

如何把一个单链表进行反转?方法1:将单链表储存为数组,然后按照数组的索引逆序进行反转。方法2:使用三个指针遍历单链表,逐个链接点进行反转。方法3:从第2个节点到第N个节点,依次逐节点插入到第1个节点(head节点)之后,最后将第一个节点挪到新表的表尾。 方法1:浪费空间。  方法2:使用p和q连个指针配合工作,使得两个节点间的

2014-09-24 19:45:34 370

原创 TCP3次握手/4次挥手的过程分析

TCP连接建立在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接。服务器必须准备好接受外来的连接。这通过调用socket、 bind和listen函数来完成,称为被动打开(passive open)。第一次握手:客户通过调用connect进行主动打开(active open)。这引起客户TCP发送一个SYN(表示同步)分节(SYN=J),它告诉服务

2014-09-24 10:06:02 503

原创 【华为SO挑战赛】输入若干个整数,输出其中能呗这些整数中其他整数整除的哪些整数

#include#include#includeusing namespace std;int main(){ char str[1000]; char temp[1000]; int num[1000]; gets(str); int count=0; for (int i = 0; i <strlen(str); i+=2) { for (int j = i+2;

2014-09-20 16:57:48 1154

空空如也

空空如也

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

TA关注的人

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