自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

活在阳光下

记录点滴 方成大牛

  • 博客(20)
  • 资源 (5)
  • 收藏
  • 关注

转载 C++继承方式

公有继承(public)、私有继承(private)、保护继承(protected)是常用的三种继承方式。1. 公有继承(public)公有继承的特点是基类的公有成员和保护成员作为派生类的成员时,它们都保持原有的状态,而基类的私有成员仍然是私有的,不能被这个派生类的子类所访问。2. 私有继承(private)私有继承的特点是基类的公有成员和保护成员都作为派生类的私有

2016-03-16 10:24:11 306

原创 不能用加减乘除做加法

对于这样的问题我们可以分为三部。第一步:把两个数字做异或运算^第二步:把两个数字做位于运算,然后把结果向左移一位,第三步:把前两步得到的结果相加,一直重复到第二步得到的结果为0为止。// AddTwoNumbers.cpp : Defines the entry point for the console application.//// 《剑指Offer——名企面试

2016-03-13 15:42:03 373

原创 求1+2+3+4+++++++n

要求不能使用for、while、if、else、switch、case等关键字,以及条件判断语句(A?B:C)方法一:我们可以用构造函数来完成这个事情,我们为了一个类创建n个对象,设置一个类的静态变量,用new分配内存(因为new自动调用构造函数)方法二:我们可以用虚函数来求解,定义两个函数,一个函数充当递归函数的角色,另一个函数处理终止递归的情况,我们需要做的就是在这两个

2016-03-13 15:22:09 1177

原创 圆圈中最后剩下的数字(约瑟夫环问题)

0,1,2,3   n-1这n个数字排成一个圈,从数字0开始每次从这个圆圈里删除第m个数字。求这个圆圈中最后剩下的数字。既题目是一个数字圆圈,我们很自然的想到就是用一个数据结构来模拟这个圆圈。环形链表是最好的办法,但是如果我们不能使用标准模板库里的数据容器来模拟环形链表,我们可以自己实现一个链表也不是很难呐。我们可以用模板库中的std::list来模拟环形链表。每当迭代器扫描到

2016-03-13 12:16:00 705

原创 扑克牌的顺子问题

从扑克牌中随意抽五张牌,判断是不是一个顺子,即这五张牌是不是连续的。2-10为数字本身,A为1,J为11,Q为12.K为13.而大小王可以看成任意的数字。我们需要把这五张牌看成是数字的形式,我们领大小王看成0,我们假定大小王可以代替任意的数字,这样先把抽出的五张牌按照数字大小的顺序排成一个有序的队列,然后统计里面的0的数字个数,还有其他数字的间隔个数字个数,比如1和4之间间隔了2,3,

2016-03-13 11:29:48 1150

原创 两个链表的第一个公共节点

输入两个链表,找出它们的第一个公共的节点。碰到这种题的时候千万不要用挨个遍历的方法,时间复杂度高对于两个有相同节点的链表的形状一定是Y。而不是X。然后还可能一个链表长一个链表短,我们可以求出差值,然后让长链表先走差值的长度,然后在挨个比较就可以了。这样时间复杂度就小很多了:// FirstCommandNodesInLists.cpp : Defines the entry p

2016-03-12 16:22:50 321

原创 数组中的逆序对

在数组中的两个数字如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求这个数组中逆序对的总队数。扫描数组的方法并不高效,时间复杂度为O(N*N),我们可以考虑拆分数组,每次平均拆分成两组,一直拆到每组数组均有一个元素,我们设置两个指针分别指向两个字数组的末尾,每次比较指针指向的数字,如果第一个数字大于第二个数字,则构成逆序对,并且逆序对的数字等于第二个数组中的数

2016-03-12 16:03:50 360

原创 第一个只出现一次的字符

在字符串中找到一个只出现一次的字符。如输入“abaccdeff” 输出结果为'b'。最直观的想法就是从头开始扫描这个字符串中的每个字符。当访问到某个字符的时候拿这个字符和后面的每个字符相比较,如果在后面没有发现重复的字符,则该字符就是只出现一次的字符,不过这种方法时间复杂度是O(n*n)。我们可以定义一个哈希表,哈希表的键值是字符,而值是数字。然后扫描字符串两次,第一次扫描字符串时

2016-03-12 15:35:05 279

原创 丑数的问题

题目:我们把只包含因子2,3,5的数称为丑数。求按从小达到的顺序的第1500个丑数。习惯上我们把1当作第一个丑数。这个问题乍看不是很难,很容易想到快速的方法求解,可是效率总是很低!根据题目可以看出丑数是有规律的,都是2或3或5的倍数,除了1之外,那么我们就可以利用这一个规律求某个范围内的丑数,而不是每个数字都判断一下。如何求一个丑数数组的下一个丑数,下一个丑数肯定比之前最后

2016-03-12 15:16:15 545

原创 两个数字判断大小

有两个int型数据A和B,在不借助于if  ?:  swich等判断条件时求出最大的值::方案一:int max=((a+b)=abs(a-b))/2方案二:int c=a-b;c=unsigned(c)>>(sizeof(int)*8-1)

2016-03-11 18:53:19 2208

原创 八皇后的问题

首先介绍一下八皇后的问题。这是一个古老而著名的问题,指的是在一个8X8的国际象棋棋盘上,有八个皇后,每个皇后占一个;要求皇后之间不会出现相互攻击的现象,即不能有两个皇后处在同一行、同一列或同一对角线上。问一个有多少种不同的排列方法?下面是代码:#includeusing namespace std;static int gEightQueen[8] = { 0 }, gCount = 0;

2016-03-10 21:17:10 376

原创 字符串转换为数字

#include #include using namespace std;void ConvertLong(string n,long&);int main(){ string a="1234585"; long value=0; ConvertLong(a,value); cout<<value<<":"<<value+1<<endl; return 0;}void

2016-03-10 19:54:43 345

原创 求素数

首先素数是除了1和自身之外,在没有可以被整除的数:#include #include using namespace std;void GetPrimer(long n,vector& primer);int main(){ vector primer; GetPrimer(100,primer); vector::iterator it=primer.begin(); whi

2016-03-10 19:44:50 303

原创 任意进制转换二进制

#include #include #include using namespace std;void fconvert(long n,vector&);int main(){ vector bit; //保存转换之后的结果 fconvert(11,bit); vector::iterator it=bit.begin(); while(it!=bit.en

2016-03-10 19:33:49 1477

原创 杨辉三角

杨辉三角是一个由数字排列成的三角形数表:/* yh-2d.c - 二维数组迭代 */#include#define M 10 // 行数 #define PYRAMID // 金字塔,会额外填充空格 #define REVERSE // 反向再来一次,得到菱形int main(void){ int a [M][M], i, j; // 二维数组和循环变量,a[行

2016-03-10 19:09:41 271

原创 a和&a的区别

下面先看一段代码:#include void main(){ int a[5]={1,2,3,4,5}; int* ptr=(int *)(&a+1); printf("%d,%d\n",*(a+1),*(ptr-1));}打印出来的结果是2,5.为什么呐?听我分析:&a+1  取数组的首地址,加1,&a是整个数组的首地址,加上一代表了a[5](越界)。(int

2016-03-04 22:29:36 898

原创 volatile

先看两段代码:int i=0;int j=i;int k=i;//volatile int i=0;int j=i;int k=i;第一段代码编译器对代码进行优化,因为代码一的两条语句中,i没有被用作左值。这个时候编译器认为i的值没有发生改变,所以在第一条语句时从内存取出i的值付给j后i并没有被丢弃,而是在第二条语句是赋给k。编译器不会生成出汇编代码重新从内存里取i的值,

2016-03-04 11:06:12 274

原创 有关对sizeof的使用

在32位系统上,每个整数占用四个字节,对任意的指针求sizeof得到的结果都是4.另外在C/C++中,当数组作为函数的参数进行传递时,数组就会自动退化为同类型的指针!

2016-03-04 10:53:14 255

原创 static和全局变量和局部变量的问题

在c语言中,static有好几种作用,下面介绍:1.隐藏的作用比如说我们在一个源代码文件中定义了一个整型变量a(全局变量)。那么在整个项目中a都是可见的,如果在其前面加上static,那么a此时变成了一个静态的全局变量,此时a只能被本源代码文件中引用,对其他代码文件是隐藏的,对于函数来说static也具有隐藏的作用。2.变量持久化的作用static修饰的变量全部存储在静态数据区,在

2016-03-04 10:47:36 568

原创 int和unsigned int相互转换的问题

先看下面这段代码:#include void main(){ unsigned int a=6; int b=-20; if((a+b)>6) printf(">6"); else printf("<=6");}乍看认为结果是6,这是因为a+b做了隐式的转换,把int转换为unsigned int. 编译器就会把b当做一个很大的正数!!!

2016-03-04 10:31:27 14796

Python图形库

python图形库graphics

2017-06-05

SQLite Expert Professional

SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它是D.RichardHipp建立的公有领域项目。它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源的世界著名数据库管理系统来讲,它的处理速度比他们都快。

2017-01-01

OpenGL开发工具库

内含GLFW,GLEW,CMake,GLM库文件

2016-07-28

windowsAPI俄罗斯方块

本游戏是由windowsAPI编写 肯定有不完善的地方 上传上来供大家学习参考

2014-08-29

Windows程序设计源代码

Windows程序设计第五版珍藏版源代码,全部23章源代码以及运行程序

2014-04-16

空空如也

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

TA关注的人

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