
数据结构和算法
文章平均质量分 66
扎扎实实写代码
勤勤恳恳打基础,扎扎实实写代码!
展开
-
c++:函数传指针(void * xx)、传引用(void & xx)和传指针的引用(void *& xx)
1。函数的形参是指针类型void func(int * arg) void func(int * arg) { *arg = 15; } main() { int * p; *p =12; func(p); printf(“%d’,*p); } 函数原创 2016-07-06 11:15:13 · 6051 阅读 · 0 评论 -
合并排序算法-c++
参考来源:http://www.cnblogs.com/yangecnu/p/Introduce-Merge-Sort.html 合并排序,顾名思义,就是通过将两个有序的序列合并为一个大的有序的序列的方式来实现排序。合并排序是一种典型的分治算法:首先将序列分为两部分,然后对每一部分进行循环递归的排序,然后逐个将结果进行合并。 合并排序最大的优点是它的时间复杂度为O(nlgn),这个原创 2016-11-03 10:43:41 · 3153 阅读 · 0 评论 -
经典汉诺塔问题:分别用递归和非递归实现
题目:相邻三根柱子,分别为A(源),B(备用),C(目标)。将A上的n个盘子移动到C上。 限制条件: 在小圆盘上不能放大圆盘。 在三根柱子之间一回只能移动一个圆盘。 只能移动在最顶端的圆盘。 方法一:递归方法。 算法: 1)当A上的盘子数量为1时,直接将盘子移动到C 柱子上。 2)当A上的盘子数量大于1时,先将A上的第1到n-1个盘子借助C,移动到B上。原创 2016-10-27 17:16:39 · 701 阅读 · 0 评论 -
快速排序算法-c++
高快省的排序算法 有没有既不浪费空间又可以快一点的排序算法呢?那就是“快速排序”啦!光听这个名字是不是就觉得很高端呢。 假设我们现在对“6 1 2 7 9 3 4 5 10 8”这个10个数进行排序。首先在这个序列中随便找一个数作为基准数(不要被这个名词吓到了,就是一个用来参照的数,待会你就知道它用来做啥的了)。为了方便,就让第一个数6作为基准数吧。接下来,需要将这个序列中所有比基原创 2016-11-14 11:09:01 · 417 阅读 · 0 评论 -
C++构造函数/复制构造函数(超容易理解版)
构造函数是干什么的 该类对象被创建时,编译系统对象分配内存空间,并自动调用该构造函数,由构造函数完成成员的初始化工作,故:构造函数的作用:初始化对象的数据成员。 构造函数的种类: 1,一般构造函数(也称重载构造函数) 2, 复制构造函数(也称为拷贝构造函数) 3,类型转换构造函数,根据一个指定的类型的对象创建一个本类的对象 class Complex { priv转载 2016-12-20 16:13:58 · 460 阅读 · 0 评论