自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

yinqiaohua的专栏

不积跬步无以至千里

  • 博客(5)
  • 收藏
  • 关注

原创 用递归实现全排列

如将s="ABCD"实现排列组合,有4!种排列方式。 思路:s的排列可分为: 'A'打头的6个排列; 'B'打头的6个排列; 'C'打头的6个排列; 'C’打头的6个排列; 而每个以A打头的排列中,在A的后面跟着是BCD的不同排列组合。这就给出了一个递归的解决方法。 /*用递归进行全排列*/ #include #include using namespace std; void

2014-12-26 17:37:29 847

原创 排序算法一:插入排序

插入排序: 1.整个排序包括两层循环。用迭代器i循环通过容器,在每次循环迭代中,使用另一个循环根据小于i的位置上的项将*i插入到其对应的位置。 #include #include #include #include using namespace std; void linear_insert(int *first,int *last,int value) { if(value<*f

2014-12-22 16:59:55 309

转载 STL中的rotate

template inline void rotate(ForwardIterator first,ForwardIterator middle,ForwardIterator last) { if(first==middle||middle==last) return; _rotate(first,middle,last,distance_type(first),iterator_catog

2014-12-18 22:39:08 364

翻译 STL中与快速排序媲美的merge sort

在SGI STL中,采用的排序法是IntroSort(一种比快速排序考虑更加周详的算法)。 而mergesort采用的是分而治之的思想,利用的是将两个有序的区间归并为一个有序区间,这通过STL中的inplace_merge可以实现。 先将区间对半分,左右两段各自排序,再利用inplace_merge重新组合为一个有序区间。对半分割的操作可以递归进行,知道每一小段的长度为0或1(那么这一小段也就

2014-12-18 11:00:04 1201

转载 全排列

看侯捷的STL源码剖析,讲述了一个next_permutation的算法,用于计算排列组合。 template bool next_permutation(BidirectionalIterator first,BidirectionalIterator last) { if(first==last) return false; BidirectionalIterator i; i=las

2014-12-17 09:33:08 470

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除