BFS和强连通分量寻找

广度优先走索(BFS)与DFS的区别还是比较明显的:后者是首先朝着一个方向始终探索,直到“死路”才回溯去探索别的路口;后者则是稳步推进的方式,有点类似水纹扩散,一步一步向外扩散。在代码思想上,主要一个是运用FIFO队列一个是FILO队列。大致实现如下: from collections impor...

2018-12-24 20:56:07

阅读数 12

评论数 0

算法教程学习--深度优先搜索(DFS)

算法教程学习–深度优先搜索(DFS) 深度优先搜索(DFS)意指从一个节点出发不断向一个方向搜索直到此方向到达终点或者不能继续搜索为止。为了可以完整地从搜索出一个节点的所有道路,需要考虑回溯的方法。 简单的递归版DFS大致实现: def rec_dfs(G, s, S): # G表示图,s表示开始...

2018-12-14 14:06:00

阅读数 27

评论数 0

第十二章物理引擎

Cocos2d-x学习笔记使用物理引擎物理引擎能够模仿真实世界物理运动规律,使得精灵做出自由落体、抛物线运动、互相碰撞、反弹等效果,使用物理引擎还可以进行准确的碰撞检测。 物理引擎核心概念物理引擎核心概念 世界(World):游戏中的物理世界。 物体(Body):构成物理世界的基础,具有位置、旋转...

2017-02-06 14:19:04

阅读数 147

评论数 0

第十一章粒子系统

Cocos2d-x学习笔记粒子系统基本概念“粒子系统”是模拟自然界中的一些粒子的物理运动的效果。单个粒子或几个粒子无法体现出粒子运动的规律性,必须有大量的粒子才体现运行的规律,而且,大量的粒子不断消失,又有大量的粒子不断产生。微观上,粒子运动是随机的,宏观上粒子运动是由规律的,符合物理学中的“测不...

2017-02-05 19:56:11

阅读数 210

评论数 0

第十章Audio引擎

Cocos2d-x学习笔记Cocos2d-x中的音频文件Cocos2d-x跨平台音频支持Cocos2d-x对于背景音乐播放各个平台格式支持如下: Android平台支持android.media.MediaPlayer所支持的格式相容,android.media.MediaPlayer是And...

2017-02-02 14:18:13

阅读数 143

评论数 0

第九章用户事件-键盘事件

Cocos2d-x学习笔记键盘事件键盘事件和触摸事件不同,它没有空间方面的信息。键盘事件不仅可以响应键盘,也可以响应设备的菜单。 键盘事件监听器是EventListenerKeyboard,其中属性如下: std::function<void(EventKeyboard::KeyCod...

2017-01-26 11:48:49

阅读数 158

评论数 0

第九章用户事件-触摸事件

Cocos2d-x学习笔记事件处理机制事件处理机制一般都有三个重要的角色:事件、事件源和事件处理者。事件源是事件发生的场所,通常就是各个视图或控件,事件处理者是接受事件并对其进行处理的一段程序。 1.事件事件类是Event,它的子类有EventTouch(触碰事件)、EventMouse(鼠标事...

2017-01-21 15:31:07

阅读数 128

评论数 0

第八章动作和动画-动画

Cocos2d-x学习笔记动画又可以分为场景过渡动画和帧动画。帧动画帧动画就是按照一定时间间隔、一定的顺序、一帧一帧地显示图片。在Cocos2d-x中播放帧动画设计两个类:Animate和Animation。Animation是动画类,它保存很多动画帧,Animate类是动作类继承于ActionI...

2017-01-20 11:18:06

阅读数 110

评论数 0

第八章动作和动画-动作速度的控制

Cocos2d-x学习笔记动作速度的控制基本动作和组合动作实现了针对精灵的各种运动和动画效果的改变。带这样的改变速度是匀速的、线性的。通过ActionEase及其子类和Speed类,我们可以使精灵以非匀速或非线性速度运动。 ActionEase类图: 实例HelloWorld.h文件#if...

2017-01-20 11:15:15

阅读数 155

评论数 0

第八章动作和动画-组合动作

Cocos2d-x学习笔记组合动作类型:顺序、并列、有限次重复、无限次重复、反动作和动画。实例(此处不再粘贴所有代码。)void Setting::OnSequence(cocos2d::Ref * pSender) { Size size = Director::getInstance(...

2017-01-19 12:15:58

阅读数 188

评论数 0

第八章动作和动画-间隔动作

Cocos2d-x学习笔记间隔动作间隔动作执行完成需要一定的事件,可以设置duration属性来设置动作的执行时间。间隔动作的基类是ActionInterval。 实例HelloWorld.h文件#ifndef __HELLOWORLD_SCENE_H__ #define __HELLOWO...

2017-01-18 14:52:46

阅读数 170

评论数 0

第八章动作和动画-瞬时动作

Cocos2d-x学习笔记基本动作动作(Action)包括了基本动作和基本动作的组合;基本动作包括缩放、移动、旋转等动作,而且这些动作变化的速度也可以设定。 Action的一个子类是FiniteTimeAction,FiniteTimeAction是一种受时间限制的动作,Follow是一种允...

2017-01-17 11:20:37

阅读数 241

评论数 0

第七章场景与层

Cococs2d-x学习笔记场景与层的关系一个场景(Scene)有n个层(Layer)对应,并且层的个数至少为1。场景切换场景切换相关函数 void runWithScene(Scene * scene):该函数可以运行场景,只能在启动第一个创景时调用该函数,如果已经有一个场景运行情况下则不能调用...

2017-01-16 12:58:50

阅读数 193

评论数 0

第六章精灵

Cocos2d-x学习笔记Sprite精灵类Sprite是Node的子类,Sprite直接继承于Node类。 创建Sprite精灵对象创建精灵对象有很多方式,其中常用的函数如下: static Sprite * create ():创建一个精灵对象,纹理等属性需要在创建之后设置。 stati...

2017-01-15 12:04:39

阅读数 159

评论数 0

第五章菜单

Cocos2d-x学习笔记菜单相关类菜单相关类包含:菜单类Menu和菜单选项类MenuItem,Menu类派生于Layer。 文本菜单文本菜单是菜单项,只能显示文本,文本菜单类包括MenuItemLabel、MenuItemFont和MenuItemAtlasFont。MenuItemLab...

2017-01-15 10:47:39

阅读数 132

评论数 0

第四章数据结构-Vector

Cocos2d-x学习笔记Vector< T >数据结构Vector< T >是cocos自己的列表数据结构,因此它能容纳的是Ref及子类的实例对象指针,其中T是模板,表示能够放入到数据结构中的类型。Vector< T >在内存管理方面不使用引用计数,它的内存管...

2017-01-14 16:23:22

阅读数 246

评论数 0

第四章数据结构-Map

Cocos2d-x学习笔记Map< K, V >数据结构Map< K, V >是cocos推出的字典数据结构,它也能容纳Ref类型。Map< K, V >是模仿C++的std::unordered_ map创建Map< K, V >对象 Map():...

2017-01-14 16:23:05

阅读数 95

评论数 0

第四章数据结构-Dictionary

Cocos2d-x学习笔记_Dictionary数据结构_Dictionary类是模仿Objective-C中的NSDictionay类而设计的,通过引用计数管理内存。 _Dictionary继承于Ref类,因此它所能容纳的是Ref及子类所创建的指针。 创建_Dictionary对象 stati...

2017-01-14 16:22:25

阅读数 222

评论数 0

第四章数据结构-Vector

Cocos2d-x学习笔记Vector< T >数据结构Vector< T >是cocos自己的列表数据结构,因此它能容纳的是Ref及子类的实例对象指针,其中T是模板,表示能够放入到数据结构中的类型。Vector< T >在内存管理方面不使用引用计数,它的内存管...

2017-01-14 16:20:52

阅读数 99

评论数 0

第四章数据结构-Array

Cocos2d-x学习笔记Cocos2-x中的数据结构在cocos中有很多数据结构,归纳后分为两大数据结构:列表和字典 列表结构包括:_Array、Vector和ValueVector 字典结构包括:_Dictionary、MapCocos2d-x中的两大类——Ref和Value在cocos中...

2017-01-14 10:48:16

阅读数 139

评论数 0

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