自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

bluesky_03的专栏

不断优化工作方式、工具、流程,不断重构代码,不断思考是否合理。

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

原创 排序4

 //计数排序//说明:不同与比较排序算法,计数排序算法不涉及到数据元素间的比较。计数排序适用于小范围集中的数据的排序,它以空间换取时间,能达到线性的时间复杂度。计数排序关键一点是:对于每一个元素x,确定有多少个元素不大于它---假设有n个元素小于或等于x(包括了x),则把x放在位序为n的地方即可。实际中,此算法很可能没快排和堆排好。//算法思想:{线性表}1。假设原始数据为ListA,数据的

2008-08-25 19:27:00 588

原创 排序3

 //快速排序之确定划分点{逻辑结构:线性表}算法思想:1。假设对线性表List[p..r]确定划分点。定义位序变量i,j。i始终指向已处理的元素列表的末尾,即元素List[p..i]均不大于List[r]。j始终指向当前要处理的元素,即元素List[(i+1)..(j-1)]均大于List[r]。2。i = p - 1。j = p。3。当j4。如果List[j]5。j=j+1。转至步骤3。6。交

2008-08-25 19:22:00 432

原创 排序2

//最大堆的调整{逻辑结构:树状结构--完全二叉树}{存储结构:顺序表--数组即可反映逻辑结构}算法思想:1。前置条件:当前结点i的左子树和右子树都已经是最大堆;设堆的大小为n。2。结点i左结点的下标l=2*i;结点i右结点的下标r=2*i+1。3。在l4。如果l结点的值大于i结点的值,则把largest记为l,否则记为i。5。如果r结点的值大于i结点的值,则把largest记为r。6。如果lar

2008-08-25 19:18:00 338

原创 排序1

 [] 表示一个块{} 表示注释kernel_code  kernel_code只考虑最一般的、最基本的情况,不作输入等检查,它不应该给外界直接调用。//插入排序{逻辑结构:线性表}算法思想:1。从第二个元素开始,依次取出各个数据元素。2。取出的数据元素跟已经有序的序列作比较,从右往左,至到所有数据比较完毕,或找到一个比取出元素要小的元素为止,设这个元素的位序为i。3。把取出的数据元素插入

2008-08-25 19:16:00 468

原创 std::map的简单使用例子

std::map map_test; {  double a1 = 0.12;  double a2 = 0.12;  double a3 = 0.19;  std::map::iterator it;  if ( (it = map_test.find(a1)) != map_test.end() )  {   (*it).second ++;  }  else  map_test.insert

2008-08-25 19:08:00 3235

原创 隐藏实现

 为了让一个类或者函数能够访问某个类里面的私有成员,可以把这个类或函数作为某个类的友元。比如,这里面把全局函数main作为某个类的友元函数:#include using namespace std;struct  Test{private: int  m_a; friend int main();};int main(){ Test test; test.m_a  = 90; //

2008-08-07 23:48:00 470

原创 NO1

 不要心存顾虑,不要优柔寡断,不要拖泥带水,不要软弱无力。不想无聊之事,不想无关紧要之事,不想幻想之事,不想既定无法改变之事。以前习惯做的事,现在可能就不做了;以前不做的事,现在可能就会去做。

2008-08-06 22:43:00 421

原创 set的使用简例

 //set的一个使用测试程序:#include #include #include using namespace std;int _tmain(int argc, _TCHAR* argv[]){ int arr[3]  = { 1, 2, 3 }; set set_test( arr, arr + 3 ); //insert  set_test.insert( 3 ); //3已

2008-08-06 20:44:00 522

原创 about set

   // TEMPLATE STRUCT lesstemplate struct less  : public binary_function { // functor for operator bool operator()(const _Ty& _Left, const _Ty& _Right) const  { // apply operator  return (_Left   } };

2008-08-06 20:41:00 457

原创 定义一个计算操作时间的宏

 #include "stdafx.h"#include #include using namespace std;void InfoLog( string info_log )  // 记录信息{ FILE *  pTargetFile = NULL; pTargetFile = fopen( "LogInfo.txt", "a+" ); if ( pTargetFile != NU

2008-08-06 20:30:00 756

原创 递归

递归是很基本的算法,它体现了分而治之的思想。每次递归调用都意味着部分数值要压入栈中(系统维护了一个下压栈),这是跟迭代的区别,因为在迭代中每次循环结束时所有局部变量都获得了释放。所以使用递归算法必须考虑它的深度,考虑是否会造成栈溢出,与及对效率造成的影响。每一次递归调用,问题的规模都应该有所减少,并最终达到终止条件的要求,从而结束递归调用。树和链表都是递归定义。递归是自顶向下的算法。递归理论上的正

2008-08-06 20:12:00 478

空空如也

空空如也

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

TA关注的人

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