随笔分类 - 算法
[转载]十大编程算法助程序员走上高手之路
摘要:十大编程算法助程序员走上高手之路转自:http://mobile.51cto.com/news-450017_all.htm本文为大家梳理阐述了十种高效率的变成算法,熟练掌握的程序员可以借这些方法逐渐发展为高手,那么我们一起来探究一下是哪十种算法有这么神奇的效果。AD:2014WOT全球软件技术峰会...
阅读全文
递归调用的分析
摘要:摘自 编程之美编程之美的第3.8题求二叉树中节点的最大距离中,在总结的时候,作者讲了一个分析递归问题的体会;1、首先弄清楚递归的顺序。 在递归的实现中,往往需要假设后续的调用已经完成,在此基础之上,才实现递归的逻辑。2、分析清楚递归体的逻辑然后写出来。3、考虑清楚递归退出的边界条件。也就是说,那些...
阅读全文
开方的实现
摘要:2014年创新工场校招笔试题:1、求一个正整数N的开方,要求不能用sqrt函数。精度精确到0.001。1.牛顿法求开方:对于待开n次方的数a,开n次方后的结果为x,则有 x = x - f(x)/f'(x), 其中f(x) = x^n - a;经过化简之后可得:x = [(n-1)x + a/(x^...
阅读全文
快速排序
摘要:快速排序是一种被广泛应用的排序算法,其平均时间复杂度为O(NlogN),最坏情况下的时间复杂度为O(N^2);1、基本思路:快速排序是一种基于分治思想的排序算法,对一个数组A[left, …, right] 进行排序的的分治过程的三个步骤为:1)分解:将数组A[left, … , right] 划分...
阅读全文
浙公网安备 33010602011771号