- 博客(68)
- 资源 (7)
- 收藏
- 关注
原创 弗洛伊德最短路径算法
#includeusing namespace std;#define MAX 1000typedef struct graph{ int e; int n; int arcs[10][10];}Graph;Graph gra;//O(n^3)void Init(){ for (int i = 0; i < 10; i++) for (int j = 0; j < 1
2016-07-31 17:57:33 530
原创 静态链表
# include# include#includeusing namespace std;# define MAXSIZE 50//静态链表typedef struct{ int pos; // 代表在数组中的位置 char data; //代表存放的值 int nextPos; //代表它下一个节点在数组中的位置}NODE;//示例输入: 0 a 2 1 f 7
2016-07-30 17:56:48 376
原创 线索二叉树
#includeusing namespace std;#define MAL (NODE*)malloc(sizeof(NODE))//线索二叉树 //如果ltag=0则指向左孩子,如果ltag=1,则表示lchild为线索,指向直接前驱。//如果rtag=0则指向右孩子,如果rtag=1,则表示rchild为线索,指向直接后继。typedef struct node{ char
2016-07-30 17:54:53 281
原创 BST二叉查找树
#includeusing namespace std;typedef struct node{ int data; struct node* lchild; struct node* rchild;}NODE;//注:平均深度 O(log N)void Insert(NODE *&p, int x){ if (p == NULL) { p = (NODE*)mallo
2016-07-30 17:53:29 273
原创 堆排序
#includeusing namespace std;void Adjust(int a[],int k, int n){ int i; int temp = a[k]; //待判断的节点 for(i=2*k;i<=n;i*=2) //i*2 下一次循环时就会指向当前的左孩子节点 { if (i < n && a[i] < a[i + 1]) //如果右孩子较大则让i指向右孩子
2016-07-30 17:51:03 234
原创 基数排序
#include#includeusing namespace std;/* 三趟排序的变化930 63 83 184 505 278 8 109 589 269 505 8 109 930 63 269 278 83 184 5898 63 83 109 184 269 278 505 589 930*///时间复杂度 O(d(n+r_d)) d为关键字的位数int a
2016-07-30 17:50:23 383
原创 KMP算法
#includeusing namespace std;typedef struct str{ char ch[20]; int length;}Str;void getNext(Str sub, int next[]){ next[0] = -1; for (int i = 1; i < sub.length; i++) { //例:ABABABB 假设比较最后一个B
2016-07-24 18:48:52 385
原创 Kruskal最小生成树算法
#includeusing namespace std;int arcNum = 9;// 边数为9int ptNum = 6;struct edge{ int start; int end; int weight;}a[9] = { {1,2,34},{1,3,46},{1,6,19}, {2,5,12},{4,5,38},{4,6,25},{3,4,17},{3,6,25},
2016-07-22 09:16:39 386
原创 mfc加载png
使用时直接调用里面的showPNG函数,传递窗口指针,资源id,以及显示的位置即可#pragma once#include "stdafx.h"BOOL LoadImageFromResource(CImage *pImage, UINT nResID, LPCTSTR lpTyp){ if (pImage == NULL) return false; pImage->Dest
2016-07-19 15:07:47 819
原创 二叉树非递归求深度和节点个数
int num = 1;void levelPrint(NODE *t){ int size=1; int deep = 0; NODE * queue[20]; int front = -1,rear=0; queue[0] = t; NODE *p = t; while (front != rear) { while (size > 0) { front++;
2016-07-17 16:10:42 1277
原创 排序算法
#include using namespace std;int a[10] = {6,2,4,8,1,5,3,0,7,9};void quick_sort(int left, int right);void Merge(int* list1,int list_size,int* list2,int list2_size);void MergeSort(int arry[10], int
2016-07-17 07:55:46 297
原创 BeautifulSoup的使用方法
开启Beautiful Soup 之旅在这里先分享官方文档链接,不过内容是有些多,也不够条理,在此本文章做一下整理方便大家参考。官方文档4. 创建 Beautiful Soup 对象首先必须要导入 bs4 库 ?1frombs4 importBeautifulSoup
2016-07-15 22:02:21 824
原创 dijkstra单源最短路径
执行过程步骤S集合中 U集合中1 选入A,此时S ={A}此时最短路径A->A = 0以A为中间点,从A开始找U = {B, C, D, E, F}A->B = 6A->C = 3A->U中其他顶点 = ∞其中A->C
2016-07-15 08:38:10 450
转载 ListControl小结
本文根据本人在项目中的应用,来谈谈CListCtrl的部分用法及技巧。当初学习时,查了很多资料,零零碎碎的作了些记录,现在主要是来做个总结,方便以后查阅。主要包括以下十三点内容:基本操作、获取选中行的行号、复选框操作、动态设置选中行的字体颜色、设置选中行的背景颜色、禁止拖动表头、让第一列居中显示、设置行高与字体、虚拟列表技术、点击表头时进行归类、向上与向下移动、动态调整大小问题、避免闪烁问题。
2016-07-11 12:46:19 541
原创 c++调用pytho模块实例
前一节配置完了环境后只是简单测试了一下,这一节要通过实例讲解来了解里面的api#include #includeusing namespace std;int main(int argc, char** argv){ Py_Initialize(); if (!Py_IsInitialized())//检测是否已初始化,成功返回0 { cout << "初始化失败!!"
2016-07-10 06:09:12 825
原创 C++调用Python之环境配置
1.首先添加include目录和lib目录可能出现无法打开python34_d.lib的问题,解决方法:1.将python安装目录下libs目录里的python27复制一份并命名为python27_d.lib2.修改include目录下的pyconfig.h,将#define Py_DEBUG注释掉最简单的测试代码:#include int main(i
2016-07-09 23:04:43 771
转载 c++用liburl进行http通讯
目录索引:一、LibCurl基本编程框架二、一些基本的函数三、curl_easy_setopt函数部分选项介绍四、curl_easy_perform 函数说明(error 状态码)五、libcurl使用的HTTP消息头六、获取http应答头信息七、多线程问题八、什么时候libcurl无法正常工作九、关于密码十、HTTP验证十一、代码示例 1.基本的htt
2016-07-09 22:07:16 2240
转载 令operator= 返回一个reference to this
一、 函数返回值说到operator=的返回值,那么先必须要说一下函数的返回值。函数的返回值用于初始化在调用函数处创建的临时对象,函数的返回值分值类型和引用类型。1、 返回值类型 返回值类型, 即告诉编译器在调用函数处创建的临时对象是函数返回对象的一个值类型。 Test Fun() { Test a;
2016-07-09 16:59:11 424
转载 虚函数表
C++ 虚函数表解析 陈皓http://blog.csdn.net/haoel 前言 C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,R
2016-07-09 08:56:23 306
转载 copy构造函数与copy assignment操作符的区别
一、拷贝构造,是一个的对象来初始化一边内存区域,这边内存区域就是你的新对象的内存区域赋值运算,对于一个已经被初始化的对象来进行operator=操作class A; A a; A b=a; //拷贝构造函数调用 //或 A b(a); //拷贝构造函数调用 ///////////////////////////////
2016-07-09 08:45:40 1301
原创 拒绝对象的赋值与复制做法
有时候,一个类中的资源是独一无二的,应拒绝用复制构造函数的方法或重载=运算符时,需要怎么做呢?有些人想将copy构造函数或copy asssignment操作符设为private,某些情况下,可能行得通,类外的确不可以直接调用,但如果使用成员函数或friend函数呢?所以,下面介绍一种奇淫技巧:首先我们建立一个基类class Uncopyable{protected: Uncop
2016-07-09 08:38:40 318
原创 指针的安全转化dynamic_cast
注意:基类指针不可以转化为派生类指针!!!通常人的做法都是直接强制转化,那样实际上是不安全的。可以先看一下这个博客的讲解,然后再看我下面的代码http://blog.sina.com.cn/s/blog_4eaff3e10101jope.html#include#include#includeusing namespace std;class C1{public: C
2016-07-08 18:47:50 352
原创 cctype
#include#includeusing namespace std;int main(void){ char ch; //cin >> ch; cin.get(ch); if (isspace(ch)) { cout << '\a'; } //cout << S << endl; system("pause");}函数名称 返回值isalnum() 如果
2016-07-08 18:45:46 401
原创 不能返回局部对象的引用
#include#includeusing namespace std;string make_plural(size_t, const string&, const string&);const string &shorterString(const string &, const string &);const string &mainip(const string&);char
2016-07-08 18:42:12 661 1
原创 对象资源管理及智能指针的简单用法
C++中的资源常常是动态分配内存,如果仅仅分配了,却不还给系统,就会造成内存泄漏。内存是众多资源中之一,其它常见资源还有GDI里的画笔,画刷对象,互斥锁mutex,数据库连接对象,socket等等,不管什么对象,不再使用时都需要返还给系统。先看一段简单的代码:A* A::create(){ A * temp = new A(); return temp;}void A::f()
2016-07-08 17:21:11 561
原创 分享一个完整程序的代码(消除类游戏)
AppDelegate.cpp#include "AppDelegate.h"#include"WelcomeScene.h"#include "SimpleAudioEngine.h"//声音管理类using namespace CocosDenshion;//声音类处于该命名空间中USING_NS_CC;AppDelegate::AppDelegate() {
2016-07-08 16:24:37 8743 7
原创 切换场景的动画
void HelloWorld:: changeScene(){ CCTransitionScene * reScene = NULL; CCScene * s = TestLayer::scene(); float t = 1.2f; // CCTransitionJumpZoom// 作用: 创建一个跳动的过渡动画// 参数1:过渡动作
2016-07-08 16:20:56 463
原创 截屏当前窗口
auto pRendertex = RenderTexture::create(960,640); pRendertex->beginWithClear(0, 0, 0, 1.0f); Director::getInstance()->getRunningScene()->visit(); pRendertex->end(); pRendertex->saveToFile("E:\\aaa
2016-07-08 16:18:13 902
原创 粒子系统
/*加载plist文件 方法一: auto* m_emitter1 = ParticleSystemQuad::create("test.plist"); scene->addChild(m_emitter1, 2); //方法二: /*ParticleSystem* m_emitter1 = ParticleSystemQuad::create("snow.plist"); m_em
2016-07-08 16:17:07 468
原创 cocos2dx中的声音
#include "SimpleAudioEngine.h"//声音管理类using namespace CocosDenshion;//声音类处于该命名空间中//方法一: SimpleAudioEngine::getInstance()->playBackgroundMusic("1.mp3", true);//播放背景音乐 //方法二:auto m_audioID = AudioE
2016-07-08 16:12:59 359
原创 碰撞检测
#include "HelloWorldScene.h"#include "cocostudio/CocoStudio.h"#include "ui/CocosGUI.h"USING_NS_CC;using namespace cocostudio::timeline;ui::Text *pText;Sprite *spt1, *spt2;Sce
2016-07-08 16:11:19 750
原创 cocos中的简易绘图
auto pDrawNode = DrawNode::create();this->addChild(pDrawNode,2); pDrawNode->drawCircle(Vec2(200, 200), 50, 1, 100, false, 1, 1, Color4F::BLUE); //圆形 pDrawNode->drawTriangle(Vec2(180, 170), Vec2(
2016-07-08 16:10:19 709
原创 编辑框
//EditBox使用 /* auto pScale9Input = ui::Scale9Sprite::create("EditBoxBackground.png"); auto m_pEditBox = ui::EditBox::create(Size(400, 40), pScale9Input);m_pEditBox->setPosition(Vec2(visibleSi
2016-07-08 16:09:31 355
原创 锚点
锚点: 简单来说就是图片的原点,默认为(0.5,0.5)假设 setPosition(x,y) anchorPoint(a,b)图片 wideth * height实际位置:x+wideth*(0.5-a) y+height*(0.5-b)
2016-07-08 16:09:00 306
原创 cocos中的自定义按钮
//文字按钮// auto pText=LabelTTF::create("BACK", "Arial", 36); auto pText = ui::Text::create("BACK", "marryde.ttf", 40);// auto pText = Label::createWithSystemFont("Back", "Arial", 36);// pText->setP
2016-07-08 16:08:32 907
原创 各种事件的回调函数写法
一、按钮回调1. Lambda 表达式,C++11 Lambda 赋予了Cocos2d-x 3.0创建回调函数的灵活性。[cpp]auto itemNor = Sprite::create("CloseNormal.png"); auto menuItem = MenuItemSprite::create(itemNor,nullptr
2016-07-08 16:07:55 2134
原创 cocos事件响应机制
auto listener = EventListenerTouchOneByOne::create(); //创建一个多点触控的监听事件 //注:事件类型对应不同的类,如:EventListenerMouse是鼠标,EventListenerAcceleration 加速器,EventListenerKeybord键盘等,参p97 /* 键盘响应 onKeyPressed和onKeyRe
2016-07-08 16:07:27 1347
原创 cocos定时器
//Node定时器 /*pMoveSprite = Sprite::create("tab4.png"); pMoveSprite->setPosition(Vec2(200, 320)); this->addChild(pMoveSprite, 2);/* this->scheduleUpdate();//生成一个定时器*/ /*auto pDirector = Director::
2016-07-08 16:04:08 330
原创 cocos简易动画
以下使用这个动作都用 pSprite->runAction(); auto pSprite = Sprite::create("1.png");// this->addChild(pSprite,2); pSprite->setPosition(visibleSize.width / 2, visibleSize.height / 2); //瞬时动画// auto pFlipX =
2016-07-08 16:03:17 669
windows下多路复用IO(select,WSAAsyncSelect,WSAEventSelect)
2018-11-17
libevent使用案例
2018-10-19
scipy-1.1.0,tensorflow-1.0.0,h5py-2.8.0
2018-08-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人