算法分析与设计
文章平均质量分 79
csufuyi
这个作者很懒,什么都没留下…
展开
-
淘宝09和百度07年的一道编程题
实现一个函数,对一个正整数n,算得到1需要的最少操作次数:如果n为偶数,将其处以2;如果n为奇数,可以加1或减1;一直处理下去。例子: 61 60 30 15 16 8 4 2原创 2008-10-10 10:04:00 · 689 阅读 · 0 评论 -
C++ STL list 成员函数 sort算法分析
最近在读《STL源码剖析》,颇有收获。当看到list结构的排序方法sort时,发现侯捷先生点到为止,说采用的是快速排序,也没有继续说明。我心存疑虑,怎么看这个代码都不像快排。 template template void list::sort(_StrictWeakOrdering __comp){ // Do nothing if the list has length 0 or 1原创 2011-06-13 00:35:00 · 4555 阅读 · 0 评论 -
如何产生全排列?
产生全排列的算法问题看似简单,实际也是一个经典的问题。以下给出了两种解法,一种是递归解法,另一种是STL模板库里面的产生下一个排列数的函数源代码。 方法一: 将产生N个数的全排列的问题看成先产生一个数的排列,再产生两个数的排列,当N=n时,递归出口,输出所求的排列。整个过原创 2011-08-15 23:56:44 · 706 阅读 · 0 评论