每个程序员都应该收藏的算法复杂度速查表

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/m0_38106923/article/details/88618438

目录

数据结构操作

数组排序算法

 图操作

堆操作

大O复杂度图表


这篇文章覆盖了计算机科学里面常见算法的时间和空间的Big-O 复杂度。在面试中经常被提问到,需要花费很多时间从互联网上查找各种搜索和排序算法的优劣。所以,为了节省大家的时间,我就创建了这个,希望小伙伴们喜欢! 

数据结构操作

数组排序算法

图操作

堆操作

大O复杂度图表

链接:https://linux.cn/article-7480-1.html

英文链接:http://bigocheatsheet.com/

展开阅读全文

每个程序员都应该知道的福利

04-22

眼下正是年后跳槽的黄金时期,园里的大牛小牛拿了去年的年终奖后,有些肯定想给自己加点工资。园里的大牛小牛都是我们中国软件业的精英,跳槽的时候 肯定手里握着好几个Offer, 不知道选择哪家。先不管工作的内容和前途,就工作本身的待遇,我们还是可以比较的。 HR是专门负责谈薪资的, 当我们跟HR讨价还价的时候, HR会介绍公司有的福利,而回避公司没有的福利。 作为程序员,我们一定要对跟我们利益息息相关的各种福利细节了如指掌, 各项福利都要跟HR询问清楚,才能比较公司之间的总体福利。 同时还需要掌握些技巧,别让我们的利益会受到损害。rnrn工资每个月多少rnrn工资是需要谈的,我见过很多优秀的人工资很低,就是因为他们不懂谈工资。公司之所以要求薪资保密,就是说明同等职位的工资存在较大的差异rnrn入职时候的工资可能在很长的一段时间内都不会变, 不要指望你入职后,再涨工资。rnrn例如:公司招了两个程序员,程序员A 5000,程序B 8000,用了一年。感觉两个人水平差不多,工资还是那样维持着。如果非要公司做解释,公司会说当初就是那么谈的。rnrn年底奖金有多少rnrn我们在计算自己的年薪都是用 (月工资*一年发多少个月)来算的, 年底的奖金非常重要, 这个一定要跟HR问清楚。 有奖金和没奖金的收入区别非常大, 没奖金的话,你过年怎么过?rnrn一般的公司都会在1月份的时候,农历新年之前发一个月的奖金。 好的公司会发两个月甚至更多, 一些变态的公司竟然发十几个月工资的奖金。rnrn那些年底没奖金的公司,最好别去。rnrn情景对话:rnrn程序员A说: “请问贵公司,年底发几个月的年终奖呢?”rnrnHR说: “奖金是跟绩效挂钩的, 有的人只能拿1个月,有的人能拿五六个月的”。rnrn程序员A说: "那请问我这个职位,表现一般的, 年底一般能拿多少个月呢?"rnrnHR说: “大概一个月吧”rnrn程序员A说: “这样啊, 明白了”rnrn程序员A心里想: “年终奖才一个月,我还以为有几个月,差点被她忽悠了”。rnrn股票期权rnrn上市公司可能会给员工股票,这是个好东西啊,很多人因为这个发财。rnrn试用期几个月,以及试用期工资多少rnrn很多大公司对试用期几个月,以及试用期工资是多少,有着明文规定, 不能谈的。rnrn有些小公司是可以谈的。rnrn试用期最好不超过3个月,试用期的工资应该和转正后的工资一样, 而且试用期内其他福利也应该和转正后一样。rnrn试用期如果是6个月会有比较大风险rnrn1. 试用期被裁。 公司被收购,或者你所在的项目缩减,都很有可能造成试用期被裁。按照法律规定,公司只需要提前3天通知你, 就可以了。不需要给你支付任何赔偿金。 这时候你会直接失业, 一下子陷入困境。rnrn2. 拿不到年终奖。 假如你是7月15日入职,那么1月15日你才转正。 公司在1月5日的时候发年终奖,而你还在试用期,就没有权利获得年终奖。rnrn住房公积金基数是多少,是否有补充住房公积金rnrn首先大家要知道。 住房公积金基数,社保基数,还有你纳税的基数。这三个基数是有可能不一样的。rnrn比如你的工资是8000,你的公积金可能按3000的基数交, 而你的社保可能按5000来交。rnrn在正规的公司,公积金基数和社保基数都是以你的工资基数来交的。rnrn住房公积金在我们买房子的时候用来贷款和还贷款的,所以对大部分人都是有用的。rnrn所以住房公积金是越高越好, 如果有补充公积金就更好了rnrn社保基数多少rnrn社保是指养老保险,医疗保险,失业保险,生育保险,工伤保险。 对于外地人来说,这些纯粹是剥削人的。你听说过有人拿过失业保险的赔偿么?交了这么多年的养老保险,以后打回原籍,一点都拿不到退休金。rnrn社保基数越低越好rnrn纳税基数是多少,是否有避税措施rnrn辛辛苦苦的赚来工资,很大一部分被别人拿走了。rnrn纳税很难避免的,还没发工资就被扣了。 不过听说过有些公司可以拿发票去顶税。rnrn入职日期rnrn入职日期最好是年后2月到4月. 好处在于rnrn1. 机会比较多,行情好rnrn2. 已经拿了去年的年终奖,rnrn3. 年过完了,年假也休得差不多了。rnrn4. 在心态上, 期望新的一年有个新的开始。rnrn5. 如果3月入职, 到了年底1月份,你共工作10个月,你能拿10/12的奖金rnrn公司加薪的制度rnrn大部分人都是靠跳槽来加薪, 如果公司的每年加薪幅度有10%以上, 就不用老跳槽了rnrn问清楚公司的加薪制度,公司每年有几次的加薪机会,平均加薪幅度有多大,在什么月份加薪.rnrn商业医疗保险rnrn如果公司给员工购买了商业医疗保险, 员工去看病,只要药品和治疗属于医保范围之类,100%报销,包括门诊和住院。 子女的医疗费用也能报销50%.。 女员工生孩子的费用也可以全报销。rnrn案例1:rnrn小王的公司给员工购买了商业医疗保险。 一天,小王感冒了,带着上海医保卡来到三甲医院看病。 医生开了400元的消炎药。 小王用医保卡付了400元。 小王把发票交给公司去报销。 最后公司将400元现金交给小王。 通过商业医疗保险,小王看病一分钱都没花,而且把医保卡中的钱,变成了手里的现金。rnrn案例2:rnrn老李的公司给员工购买了商业医疗保险。 有次小李的儿子生病住院,花了3000元。小李先用社会保险报销了1500元。 剩下的1500交给公司去商业医疗保险报销。 通过商业医疗报销。 老李儿子的医药费全都报销了,自己一分钱都不用拿出来。rnrn案例3:rnrn张小姐的公司给员工购买了商业医疗保险。 张小姐前段时间破腹产,花了8000多元。 还好有商业保险,全都报销了。 因为是独生子女, 商业医疗报销还奖励了1千元.rnrn通过这几个案例,我们可以看出商业医疗保险是个很好的福利。rnrn年假多少天rnrn按国家法律规定,满一年后有5天年假。 所以很多一般的公司都是按这个来的, 实在是年假太少了(满一年才有5天年假)。rnrn年假太少非常不爽,过年回老家都没假,平常要是有什么事。没年假了说不定还要请事假(扣工资的)rnrn有些外企,第一年10天年假, 工作满3年有15天年假。 而且是入职就有年假, 不用满一年。rnrn带薪病假多少天rnrn带薪病假就是:指跟公司请病假(不需要开病假单),不扣工资的。 这个福利很爽的哦rnrn一般外企会有这个福利。 这带薪病假跟年假差不多, 只不过带薪病假一般不能连续请几天。rnrn案例1:rnrn小志计划周三带女朋友去杭州玩,行程早就安排好了。 到了周三早上,小志给他领导打电话,说他女朋友身体不舒服,需要请一天病假。 领导说: "好的,你好好照顾你女朋友吧". 然后小志高高兴兴陪女朋友在杭州玩,不用担心扣工资。rnrn每年旅游机会rnrn小福利, 出国旅游才是较大的福利,rnrn有无出国的机会rnrn能出国是很多人考虑的因素,有海外工作经验会对自己的职业生涯有很大的帮助。rnrn稳定性rnrn现在虽不是技术牛人,就是正在成为技术牛人的人,不担心找不到工作。就算碰到裁员,拿了赔偿金后,还能迅速找到更好的工作。rnrn一般女生比较注重稳定性。rnrn过节的福利rnrn小福利,不用考虑,比如端午节发个粽子, 中秋节发个月饼票rnrn培训机会rnrn有没有英语培训,或者技术培训。rnrn健身补助,饭补,交通补助rnrn可遇不可求。rnrn企业文化和工作氛围rnrn最怕碰到那种有办公室政治的公司了,同事之间勾心斗角,拉帮结派,排挤新人,搞得乌烟瘴气。rnrn大家开开心心在一起工作多好,何必搞这么多名堂呢?rnrn喜欢领导和同事都很Nice的公司。rnrn上班的路程rnrn当然是公司离住所越近越好,谁都不想早上挤地铁挤公交。1个多小时下来,赶到公司歇口气才能缓过来rnrn定期的体育活动rnrn健康的重要性不言而喻,大部分程序员的身体都处于亚健康的姿态,坐在电脑面前一坐就是一天。除了休息和健康的饮食外,运动是我们保持健康的唯一的方法。rnrn去健身房办卡很难坚持,很多人办了卡只去过一两次,如果公司有定期的体育活动,比如篮球,羽毛球。我们就很容易坚持。rnrn最后算算到手能拿多少rnrn每个月拿到手的,才是你真正的工资。不要把税前的工资当成是你的工资。 论坛

程序员最具影响的,每个程序员都应该阅读的书籍【转载】

04-04

国外知名网站 stackoverflow 上有一个问题调查: 哪本书是对程序员最有影响、每个程序员都该阅读的书?, 这个调查已历时两年,目前为止吸引了 153,432 人访问,读者共推荐出了 478 本书(还在增加),其中最火的一本书《Code Complete》被顶了 1333 次。rnrn如果你是个程序员,你一定有兴趣看看这些书里你都看过几本,如果你一本没看过的话,我也不好说什么,也许你是个天 才,但我相信大多数人都知道,你在学校里根本学不到什么真正的工作中需要的知识,我们毕业后能帮助我们在公司中胜任工作的老师就是这些优秀的书籍,一本好 书可以改变一个人的一生。rnrn下面是这个调查中排名靠前的书的一个简单的清单:rnrn第一名:1333票《Code Complete (2nd Ed) by Steve McConnell》,中文版《代码大全(第二版)》,两届Software Jolt Award震撼大奖得主!rnrn第二名:1181票 《The Pragmatic Programmer》,中文版《程序员修炼之道》rnrn第三名:701票 《Structure and Interpretation of Computer Programs》,中文版《计算机程序的构造和解释》rnrn第四名:572票 《The C Programming Language》,中文版《C程序设计语言》rnrn第五名:481票 《Introduction to algorithms》,中文版《算法导论》rnrn第六名:478票 《Refactoring: Improving the Design of Existing Code》,中文版《重构:改善既有代码的设计》rnrn第七名:447票 《The Mythical Man-Month》,中文版《人月神话》rnrn第八名:440票 《Design Patterns》,中文版《设计模式》rnrn第九名:394票 《The Art of Computer Programming(First Volume Hardcover)》,中文版《计算机程序设计艺术第 (第一卷)》rnrn第10名:364票 《Compilers: Principles, Techniques, and Tools 》,中文版《编译原理》rnrn第11名:329票 《Head-First Design Patterns》,中文版《Head First 设计模式》rnrn当然了,这里的排名并不具有什么权威性,但绝对可以说都是好书,这11本外还有很多书虽然票数不是那么多,但大家估计都耳熟能详,比如《Effective C++》(中文版《Effective C++:改善程序与设计的55个具体做法》),《Clean Code》(中文版《代码整洁之道》),《Effective Java》(中文版《Effective Java中文版(第2版)》等 。rnrnrnrn[color=#FF0000]下载可在下载频道自行搜索[/color][size=14px][/size] 论坛

每个初学者都应该搞懂的问题(4)

03-23

对于这个系列里的问题,每个学Java的人都应该搞懂。当然,如果只是学Java玩玩就无所谓了。如果你认为自己已经超越初学者了,却不很懂这些问题,请将你自己重归初学者行列。rnrnrnfinal关键字到底修饰了什么?rn要理解此问题,请首先理解本系列第二个问题所阐述的概念。http://expert.csdn.net/Expert/topic/2868/2868492.xml?temp=.3966181rnrnfinal使得被修饰的变量"不变",但是由于对象型变量的本质是“引用”,使得“不变”也有了两种含义:引用本身的不变,和引用指向的对象不变。rnrn引用本身的不变:rnfinal StringBuffer a=new StringBuffer("immutable");rnfinal StringBuffer b=new StringBuffer("not immutable");rna=b;//编译期错误rnrn引用指向的对象不变:rnfinal StringBuffer a=new StringBuffer("immutable");rna.append(" broken!"); //编译通过rnrn可见,final只对引用的“值”(也即它所指向的那个对象的内存地址)有效,它迫使引用只能指向初始指向的那个对象,改变它的指向会导致编译期错误。至于它所指向的对象的变化,final是不负责的。这很类似==操作符:==操作符只负责引用的“值”相等,至于这个地址所指向的对象内容是否相等,==操作符是不管的。rnrn理解final问题有很重要的含义。许多程序漏洞都基于此----final只能保证引用永远指向固定对象,不能保证那个对象的状态不变。在多线程的操作中,一个对象会被多个线程共享或修改,一个线程对对象无意识的修改可能会导致另一个使用此对象的线程崩溃。一个错误的解决方法就是在此对象新建的时候把它声明为final,意图使得它“永远不变”。其实那是徒劳的。rnrnrn 论坛

没有更多推荐了,返回首页