随笔 - 5  文章 - 1  trackbacks - 0
<2007年6月>
272829303112
3456789
10111213141516
17181920212223
24252627282930
1234567

常用链接

留言簿(2)

随笔档案(5)

文章分类(3)

文章档案(3)

搜索

  •  

最新评论

阅读排行榜

评论排行榜

adjacent_difference: *(_o + i -_begin) = bin_op (*i, *(i-1))

partial_sum: *(_o + i -_begin) = bin_op (*(_o + i -_begin),*i)

adjacent_find: return iterator which binary_pred(*i, *(i+1)) is
true

inplace_merge combines two consecutive sorted ranges [first, middle) and [middle, last) into a single sorted range [first, last)


next_permutation,其算法原理如下:
1. 从当前序列最尾端开始往前寻找两个相邻元素,令前面一个元素为*i,后一个元素为*ii,且满足*i<*ii;
2. 再次从当前序列末端开始向前扫描,找出第一个大于*i的元素,令为*j(j可能等于ii),将i,j元素对调;
3. 将ii之后(含ii)的所有元素颠倒次序,这样所得的排列即为当前序列的下一个排列。
posted on 2007-06-08 14:59 Tempwmk 阅读(388) 评论(0)  编辑 收藏 引用

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理