6 breakingsword

尚未进行身份认证

越知越无知,求学求不学。

等级
TA的排名 14w+

一.状态模式与实例

1.状态模式概况适用条件 1.一个对象的行为取决于它的状态,并且在它必须在运行时根据状态改变它的行为。 2.代码中包含大量与对象状态有关的条件语句。Context包含有状态的接口的声明,利用多态的特性,可以自由的转换其接口的实现,从而改变具体的方法。 2.状态模式举例电视遥控器有开机,关机,调频道,调音量这四个功能。 但是只有在开机的情况下才能调频道,调音量。 未使用状态模式之前:pu

2016-09-12 16:37:33

八.堆与堆的构建

1.堆的概述堆数据结构是一种数组对象,它可以被视为一棵完全二叉树结构。它的特点是父节点的值大于(小于)两个子节点的值(分别称为大顶堆和小顶堆)。 2.堆的构建给定n个数,从n/2个节点开始,依次构建堆,直到第一个节点。举例: 给定数组{5,23,37,41,59,16,23},构建其大根树。转换成树结构 从n/2节点开始,如图为3——“37”,构建其为堆。 现在轮到2,如图为“23”,构

2016-09-12 16:27:40

七.图的多种分类

1.图的概述图形结构中,节点之间的关系是任意的,图中任意两个数据元素之间都有可能相关。图G由两个集合V(顶点Vertex)和E(边Edge)组成,定义为G=(V,E)。2.图的分类无向图:全由无向边组成的图为无向图。 表示: V={1,2,3} E={(1,2),(1,3)} 有向图:全由有向边组成的图为有向图。 表示: V={1,2,3} E={<2,1>,<1,3>}(注:有向

2016-09-12 16:26:22

六.树的多种分类

1.属性树是由n(n>=1)个有限节点组成一个具有层次关系的集合,形状像树。 节点属性: 度 这个节点所包含的子树个数。关系 这个节点与父节点、子节点、兄弟节点、堂兄弟节点关系。祖先和子孙的关系。层次 根为第1层,根的子节点为第2层,依次类推。 名词 含义 叶节点 度为0 分支节点 度不为0 兄弟关系 同一个父节点 堂兄弟关系 双亲同一层 祖先 从

2016-09-12 16:24:05

五.单链表、双向链表与循环链表

1.头指针和头结点头指针 指向第一个模块。 头结点 在链表的第一个结点之前附设一个结点,这个结点可以不存储信息,也可以存储链表的长度等。 2.单链表单链表,只在尾部有一个指针,指向下一个数据。 3.循环链表循环链表,尾部数据的指针指向头部数据 4.双向链表双向链表 每个存储元素不仅包含数值和尾部指针,还拥有头部指针,头部指针指向上一个元素。 5.双向循环链表双向循环链表 首尾

2016-09-12 16:20:11

四.队列与双端队列

1.队列概述队列(queue)是一种是相对于栈的一种数据结构,它是先进先出(First In First Out)。 它只可以在尾部添加元素。 双端队列(deque double ended queue(双端队列))是一种相对于队列的一种数据结构。它可以在尾部和头部插入、移除和获取。 2.队列方法java.util.Queue接口,用以支持队列的常见操作。该接口扩展了java.util.Col

2016-09-12 16:16:01

三.栈与栈的实例——汉诺塔

1.栈 First In Last Out,顺序栈和链栈,六种方法,声明使用方式。1.1 概论栈,是一个先进先出的一个数据结构。如图: 1.2 顺序栈和链栈顺序栈就是一般的栈。链栈就是使用链表将栈存储起来的由上一元素的节点指向下一元素。 如图所示: 1.3 六种基本方法构造空栈:初始化一个栈。 InitStack(S)判断空:判断是否为空。StackEmpty(S)判断满:判断是否

2016-09-12 16:13:20

二.一维和多维,静态与动态数组

1.数组概论数组是一种按顺序存储的数据结构,可以使用下标进行随机化访问。2.静态数组2.1 一维数组使用顺序存储,可以随时改变其中内容。申请方式: 语言 申请方式 java 数组类型 变量名[]=new 数组类型[个数] c++ 数组类型 变量名[个数]存储方式:在内存中连续存储。2.2 二维数组和多维数组二维数组是使用数组作为数组的元素进行存储,多维数组是迭代这个过

2016-09-12 16:11:13

一.数据结构概论

1.数据与数据结构概论数据:信息的载体。 数据元素:数据的基本单位,也是最小单位。 数据对象:具有相同性质的数据元素的集合。 数据结构:统一数据对象中个数据元素之间存在的关系。 关系如图: 2.数据结构逻辑结构 线性结构、树形结构、图2.1 共同表示方法Data_Structure={D,R} D:数据元素的有限集合,包含了所有的数据。 R:D上关系的有限集合,包含了所有数据的

2016-09-12 16:09:46

十五.Android网络通信与Volley简单介绍

1.Android 网络通信URL请求的类别 GET:参数放在url里。 POST:参数放在http请求报文中。1.1 HttpURLConnection创建UrlURL url = new URL("http://www.baidu.com");创建HttpURLConnection,引用为url.openConnection();HttpURLConnection connect

2016-09-12 13:28:02

十四.Android简单的音频播放器和视频播放器

1.概述现在的智能手机越来越代替传统音乐播放器的作用了。这次我们就来看看简单的音频播放器和视频播放器如何编写。2.音频播放器2.1准备工作MediaPlayer:音频的基本操作类。 方法 作用 start 开始 pause 暂停 reset 停止 prepare 准备就绪 isPlaying 是否正在播放 release 释放这个播放器

2016-09-12 13:21:56

十三.Android数据持久化方法之一——SQLite

1.概述使用SQLite存储数据。 数据库文件存储在/data/data/包名/databases/下。 和SQL联系到一起。2.用法继承SQliteOpenHelper类 构造方法:SQLiteOpenHelper(context,数据库名,null(可以自定义的cursor),版本号) 需要重写onCreate和onUpgrade方法。 方法 用处 onCreate()

2016-09-12 13:18:00

十二.Android数据持久化方法之一——文件保存

1.文件保存概述Android允许使用文件对一些信息进行保存。 文件存储在data/data/包名/files/目录下。2.具体方法2.1 写入文件关键代码 Contex类中提供了openFileOutput()方法, openFileOutput(文件名,操作模式) 文件名为保存文件的文件名。操作模式有MODE_PRIVATE和MODE_APPEND两种。 模式 作用 MOD

2016-09-12 13:10:30

十一.Android数据持久化方法之一——sharedPreferences

1.sharedpreferences的存储和读取概论 Android数据存储使用sharedpreferences(以下简称SP),以键值对的方式存储在xml文件里。文件结构如下:<map> <string name="username">18883340065</string> <string name="password">6b28020697bf708712a824ca

2016-09-12 12:59:33

十.Android ContentProvider 实例——获取联系人

1.ContentProvider简述ContenttProvider(以下简称CP)是为了获取不同应用之间的数据而诞生的组件,并且官方为常见的一些数据提供了默认的CP。例如,联系人、短信等。CP的几点关键: Uri:是CP的标志符,是识别CP的唯一方式。ContentResolver:对CP进行操作的类。权限:有时候操作一些地方需要一些权限。2.获取联系人实现思路3.具体实现3.1 申

2016-09-12 12:57:13

九.Android的BroadCastReceiver详解

1.BroadCastReceiver概述说起这个组件,就不得不提到广播了。广播是应用程序之间传输信息的机制。是为了方便数据的通信,例如监听一些广播,如来电、来短信等。广播的流程:发送—>接收。* 一个发送,多个接收。* 如图 2 流程2.1 发送 普通广播、有序广播 广播分类 发送方法 普通广播 Context.sendBroadcast() 有序广播 Context

2016-09-12 12:53:45

八.Android的Service生命周期

1.service 概述服务是脱离UI的一种运行程序,它负责了一些不必显示在屏幕上的运行过程。服务分为:本地服务和远程服务,此处只讨论本地服务。两种启动service的方式:startService和bindService。2.Service生命周期2.1 Service基本生命周期提到生命周期,就要提到两种开启Service的方法了: 直接开启startService,使用stopSe

2016-09-12 12:44:47

七.Android的Activity生命周期和启动模式

1.生命周期1.1 存在意义因为机器的内存不能同时存在太多程序,于是Android的Activity就有了一个产生和销毁的过程,这就是Activity生命周期。1.2 七种方法四种阶段 阶段 方法 产生 onCreate 处于焦点 (onRestart),onStart,onResume 失去焦点 onPause,onStop 销毁 onDestroy有生

2016-09-12 11:54:18

六.Android自定义控件

1.继承并在绘制前后添加 法一句话: 继承常用的控件后,在绘制之前或之后进行逻辑添加。关键代码 @Override public void onDraw(Canvas canvas){ //绘制前进行自己绘制。 super.onDraw(canvas); //绘制后进行自己绘制。 }例子:继承一个TextView,然后先绘制一

2016-09-12 11:49:54

五.LinearLayout的gravity,layout_gravity和weight

LinearLayout布局时有三种属性可能会经常遇到,并且还是不好理解的,所以特意拿出来说一下。1.gravity1.1 gravitygravity属性是view本身内容的位置。 例如,TextView的text,Button的text等。1.2 属性值上下左右。 属性值 效果 top 将对象放在其容器的顶部,不改变其大小. bottom 将对象放在其容器的底部,不改变其

2016-09-12 11:45:31

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!