以图明志

计算机算法

[专题] 快速排序里的学问:枢纽元选择与算法效率

枢纽元选择也有学问
通常的、没有经过充分考虑的选择是将第一个或最后一个元素用作枢纽元。如果输入是随机的,那么这是可以接受的,但是如果输入是预排序的或者是反序的,那么这样的枢纽元就产生一个劣质的分割,因为所有的元素不是被划入S1就是被划入S2。更有甚者,这种情况发生在所有的递归调用中。

计算机算法

[专题] 漫谈递归:递归的效率问题

效率和开销问题是递归最大的缺点
递归在解决某些问题的时候使得我们思考的方式得以简化,代码也更加精炼,容易阅读。那么既然递归有这么多的优点,我们是不是什么问题都要用递归来解决呢?难道递归就没有缺点吗?今天我们就来讨论一下递归的不足之处。谈到递归就不得不面对它的效率问题。

IT人家

如何高效地阅读技术类书籍与博客

影像阅读法
阅读是自我提升的一个有效方法,阅读书籍、阅读博客都是我们技术提升的重要手段之一。但是阅读的质量,阅读的方法很大程度上限制了我们的知识获取的深度与广度,如何高效的阅读就成了一个重要的话题。我觉得同一类的书籍,在于精而不在于多。很多书外包装精美,价格也不菲,但是买回来一细看,发现要么漏洞百出,要么是说的比较宽泛,缺少自己的特色。

数据结构

[专题] 第13话:算法的性能分析

如何判断一个算法的效率
我们不关心编写程序所用的程序设计语言是什么,也不关心这些程序将跑在什么样的计算机中,我们只关心它所实现的算法。这样,不计那些循环索引的递增和循环终止条件、变量声明、打印结果等操作,最终,在分析程序的运行时间时,最重要的是把程序看成是独立于程序设计语言的算法或一系列步骤。

智力开发

拒绝瞎忙,高效的学习与工作经验谈

花时间多未必做得最好
每天都过的很快,好像起床以后忙活几下,又到了晚上,很快又要睡觉了。To-do-list上的事好像总是做不完,有的时候积压地太多以至于都不想去碰了。每天从早到晚都是忙碌状态,但是总觉得做不了几件事,要是给我1天48小时该多好。事情太多时间不够,但是睡少了又效率低下,这实在是个悖论。

智力开发

[专题] 二八原理:你必须知悉的二八原理

无处不在的二八原理
有经常阅读习惯的人,应该都听说过二八原理(如果你之前从来没听说过,那你的知识面有太窄的嫌疑)。但是知道二八原理的人有很多却不会(或者不善于)运用。直接的后果就是你在各种事情上付出了很多时间与精力,但是回报却很少。鉴于该原理非常非常的实用,俺打算专门写一个系列来聊聊和它相关的话题。

IT人家

效率由心生,快速提高工作效率秘诀

现代人都很忙,但忙的可能没有效率
现代人都很忙,但忙的可能没有效率,可能在"忙人"摸象,也就是瞎忙。也许你的效率可以提升20倍,也许你的激情和潜能可以提升10倍!秘诀就在于目标管理、时间管理、精力管理、如何在短时间内完成更多的事情、如何从痛苦的修行中悟道、如何尊崇内心的自由、如何有更多的时间去享受生活、如何动态平衡工作和生活?!这里有能大大提升工作效率和时间效率的几个重要的工作习惯。

数据库技术

理解SQL原理,写出高效的SQL语句

Sql养成一个好习惯是一笔财富
我们做软件开发的,大部分人都离不开跟数据库打交道,特别是erp开发的,跟数据库打交道更是频繁,存储过程动不动就是上千行,如果数据量大,人员流动大,那么我们还能保证下一段时间系统还能流畅的运行吗?我们还能保证下一个人能看懂我们的存储过程吗?

CSS

一些比较高效的CSS写法建议

避免一些低效的key selectors去匹配大量的元素
当浏览器解析html的时候,它构造了一个文档树来展现所有被显示的元素。 它在特定的样式表中去匹配元素,根据标准的css的层叠,继承和顺序规则, 在mozilla的实现中(可能其他的也是这样),对于每一个元素,css引擎通过规则去寻找匹配,css引擎评估每一个规则是从右到左的,从最右的selector开始, 也称之为key selector,直到找到匹配为止。

JavaScript

如何在数据访问层上提高js的执行效率

标识符解析、作用域链、运行期上下文、原型链、闭包
本文讲到的是如何从数据访问层面上提高JS 代码的执行效率。总的来讲有以下几条原则:函数中读写局部变量总是最快的,而全局变量的读取则是最慢的;尽可能地少用with 语句,因为它会增加with 语句以外的数据的访问代价;闭包尽管强大,但不可滥用,否则会影响到执行速度以及内存;嵌套的对象成员会明显影响性能,尽量少用;

智力开发

告别拖延,过上高效生活

程序员究竟该如何提高效率
肯定有人跟你说过这样的话“你有看电视的那么长时间,都可以用来写一本书了”,不可否认写书肯定比看电视更好的利用了时间,但是这个结论的成立需要一个假设:"时间是可互换的",也就是说看电视的时间可以轻松的用来写书。但是很遗憾,事实并非如此。不同的时间有不同的质量等级。如果我在走向地铁站的路上发现自己的笔记本忘带了,我就很难集中注意力写文章。

Web设计理念

一些提高Web应用执行效率的建议

一些细节让你的Web应用跑得更快
尽量避免使用DOM。当需要反复使用DOM时,先把对DOM的引用存到JavaScript本地变量里再使用。使用设置innerHTML的方法来替换document.createElement/appendChild()方法。 eval()有问题,new Fuction()构造函数也是,尽量避免使用它们。

数据库技术

提高MySQL效率与性能的技巧

数据库性能是个不得不面对的问题
数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显。关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情。当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能。这里,我们不会讲过多的SQL语句的优化,而只是针对MySQL这一Web应用最多的数据库。

JavaScript

高效率JavaScript代码的编写技巧

让复杂的JavaScript应用更有执行效率
使用DocumentFragment优化多次append,添加多个dom元素时,先将元素append到DocumentFragment中,最后统一将DocumentFragment添加到页面。该做法可以减少页面渲染dom元素的次数。经IE和FX下测试,在append1000个元素时,效率能提高10%-30%,FX下提升较为明显。

PHP服务器脚本

分拆数组元素的函数效率比较与分析

多借助多使用系统函数
有这么一个需求,一个数组$data = array(12, 43, 87, 45),要求写一个自定义函数,将其数组元素的数字单个拆开,最后形成的数组如下:$data = array(1, 2, 4, 3, 8, 7, 4, 5)。就是把原来的数组中的数都“拆”成“单”位的。下面是自己写的一个函数,测试了一下,还是可以执行的。

编程思想

x=x+1, x+=1, x++哪个效率高些?

一个编程效率细节问题
之前一直习惯性的认为x=x 1、x =1和x 仅仅是书写表示方法的不同,没想到细细研究,差别还是不小的。……从上面的过程可以看出,x 比x =1少了一个写的过程,而x =1比x=x 1少了一个寻址的过程(查找左面x的地址),所以三条语句的效率是x = x 1 < x = 1 < x 。
1 / 2 首页 < Prev 1 2 Next > 尾页 页码: