cp_Mark的博客

脚踏实地,耐心学习

排序:
默认
按更新时间
按访问量

定义:图(Graph)是由顶点的有穷非空集合和顶点之间的集合组成,通常表示为:G(V、E),其中G表示一个图,V是图G中顶点的集合,E是图G中边的集合。下图就是一个图的示例: 在图的定义过程中,有几点我们需要注意的: (1)在图中数据元素,我们称之为顶点 (2)在图结构中,不允许没有顶点 (3)...

2018-10-03 17:13:38

阅读数:23

评论数:0

串(字符串)

串的定义 串是由零个或多个字符组成的有限序列,又名叫字符串。一般记为s=“a1a2…an”(n>=0),其中s是串的名称,用双引号括起来的字符序列是串的值,注意引号不属于串的内容。串中的字符数目n称为串的长度。零个字符的串称为空串。 下面是一些需要注意...

2018-10-03 09:49:26

阅读数:7

评论数:0

树、二叉树

树的定义 定义: 树是n(n>=0)个结点的有限集。n=0时称为空树。在任意一棵非空树中: (1)有且仅有一个特定的称为根的结点 (2)当n &amp...

2018-09-18 21:31:56

阅读数:21

评论数:0

栈和队列(顺序栈、链栈、队列、循环队列、链队列)

栈的定义 定义:栈是限定仅在表尾进行插入和删除操作的线性表。我们把允许插入和删除的一端称为栈顶,另一端称为栈底,不含任何数据元素的栈称为空栈。栈又称后进先出(Last In First Out)的线性表,简称LIFO结构。 栈的插入操作,叫作进栈(Push),也称压栈、入栈。栈的删除操作,叫作...

2018-09-18 21:31:41

阅读数:32

评论数:0

线性表(数组、单链表、静态链表、循环链表、双向链表)

线性表的定义 线性表(List):零个或多个数据元素的有限序列。 有几个地方需要强调: 首先它是一个序列,也就是说元素之间是有顺序的,若元素存在多个,则第一个元素无前驱,最后一个元素无后继,其他每个元素都有且只有一个前驱和后继。 然后线性表强调的是有限的。 最后线性表中的数据元素必须是相同...

2018-09-18 21:31:26

阅读数:12

评论数:0

数据结构绪论

程序设计的实质是对确定的问题选择一种好的结构,加上设计一种好的算法。 程序设计=数据结构+算法 基本概念和术语 数据:是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入计算机处理的符号集合。数据不仅仅包括整型、实型等数值类型,还包括字符及声音、图像、视频等非...

2018-09-18 21:31:02

阅读数:16

评论数:0

Android-自定义Annotation注解

序 现在市面上越来越多的基于注解的框架出现,它们可能或多或少的存在一些问题,但是确实是在某些方面大大简化了我们的开发周期和难度,也使得有些代码更加优雅。 为了进一步提升自己(装逼中。。。),就决定去了解一下到底什么是注解,它们有几种类型,它的实现原理,它是怎么起到简化代码的作用的。 我们以A...

2018-09-17 22:31:45

阅读数:13

评论数:0

Android入坑react-native:关于从原生数据流到flux、redux的演化

最近入坑React-Native,买了些参考书,撸了一个玩Android的react-native版本,对于参考书里面关于flux和redux是一脸的懵逼,后面在豆瓣上搜了redux相关的书籍,发现一本不错的入坑书深入浅出React和Redux,里面讲解了原生prop和state的不足,以及一步步...

2018-07-14 21:02:19

阅读数:47

评论数:0

RxJava2.1.14源码学习(三)线程切换observerOn

在上一篇我们已经介绍了线程切换两大操作符中的subscribeOn了,这一片我们来分析一下observerOn。本文重点是: (1)observeOn是如何实现的,它是如何影响事件流的, (2)如果我们使用多次会是什么结果,为什么? (3)subscribeOn和observeOn的混合使用...

2018-06-19 10:49:13

阅读数:98

评论数:0

RxJava2.1.14源码学习(二)线程切换subscribeOn

在上一篇我们只是简单的介绍RxJava的订阅和事件流,这一篇我们要分析的是RxJava最流弊的地方:线程切换。相信使用过RxJava的人都会被它优雅的线程操作所折服,好了不废话了,我们先说一下本文的重点: (1)subscribeOn是如何实现的,它是如何影响事件流的,如果我们使用多次会是什么结...

2018-06-15 16:17:49

阅读数:51

评论数:0

RxJava2.1.14源码学习(一)基本流程(附带装饰者模式、观察者模式说明)

RxJava已经是日常开发必备的技能,连带面试也是常问的知识点

2018-06-14 15:58:41

阅读数:83

评论数:0

记Google Play应用签名计划带来的问题

在某些特殊的情况,我们的应用需要强制升级(比如重大bug),以前上架小米、华为、360等国内市场一切都是正常的,但是这次上架Google Play发现升级会失败,提示签名不一致,同时原来正常的定位功能,上传到Google play也无法正常使用,提示key验证失败。一脸懵逼,上网去查资料,发现Go...

2018-06-13 09:48:27

阅读数:925

评论数:0

记上架GooglePlay提升targetSdkVersion导致的适配问题

升了targetSdkVersion,出现了一些适配的问题,还有权限的问题,实在是不想升,但是没办法Google爸爸要求必须要升,硬着头皮上了。 我主要是面临两个方面的问题: (1)权限的动态申请 (2)应用升级、拍照获取图片异常(这两个是同一个问题) 对于权限问题,相对来说还是比较简单的...

2018-06-11 17:26:38

阅读数:436

评论数:0

记Paypal支付小坑

因为业务需求,需要接入Paypal,总体来说也是比较简单的,但是陌生的东西总是免不了要躺坑的,这里做一下记录。 首先是一波官方的资料: Paypal Android sdk github地址 Paypal 开发者首页 在开始之前你需要一个Paypal的账号。 接入的大致步骤如下: (1...

2018-06-11 15:17:08

阅读数:288

评论数:0

记Google应用内商品(消耗品)支付小坑

因为应用要上架Google Play,所以需要接入Google支付和Paypal支付,本篇先记录一下Google支付接入流程。首先来一波定心丸,Google支付的接入还是很简单的;然后就是官方文档啦实现应用内购买结算。 个人理解,购买流程大致如下: (1)查询当前设备是否支持应用内购买 (2...

2018-06-11 14:36:06

阅读数:315

评论数:0

记Google Play上架及测试注意点

在要开始上架流程之前,有一些东西要准备好: (1)Google的开发者账号(需要付费) (2)一款FQ工具 (3)手机要有Google Play应用商店和Google Play服务(测试时使用,因为国内手机大部分都是没有的,自己想办法搞定) 做好上面这些准备,就开始正式的流程了。 发布流...

2018-06-11 11:08:51

阅读数:1254

评论数:1

Okhttp解析(二)-- 缓存

在上一篇Okhttp解析(一)– 源码中,我们从源码角度分析了同步请求和异步请求的流程,这一篇我们主要是分析Okhttp的缓存实现以及真正发送请求的HttpCodec实现。 CacheStrategy 在上一篇中,我们简单描述了一下它的作用:给定一个请求和缓存的响应结果,它将决定是否使用网...

2018-05-24 18:00:39

阅读数:79

评论数:0

Okhttp解析(一)-- 主体流程

Okhttp是当前最火的网络请求框架,即便是Retrofit也是在Okhttp的基础上做的进一步的封装,便于开发者的使用,本篇我们就从源码的角度出发,分析一下Okhttp网络框架的请求流程,以3.10.0为例。 我们就以okhttp在github上给出的get请求的示例代码为例来分析: OkH...

2018-05-23 16:55:11

阅读数:101

评论数:0

Volley解析(二)-- 架构分析

Volley是Google2013年I/O大会发布的一个轻量级的网络请求封装库,适用于多而小的网络请求,原因是它的缓存机制使用的是大小仅为5M的DiskBasedCache缓存。它的整个请求的分发流程,是通过RequestQueue来下发给CacheDispatcher和NetworkDispat...

2018-05-21 21:13:01

阅读数:28

评论数:0

Volley解析(一)-- 源码

涉及到的知识点: Volley网络请求的流程 网络分发器逻辑 缓存分发器逻辑 线程Lock逻辑 准备 在正式开始分析Volley源码逻辑之前,有两件事需要搞明白: Volley是怎么使用的? 请求的流程是怎样的? 我们先从基本的使用开始吧。 Volley的使用方式 我...

2018-05-19 10:26:56

阅读数:38

评论数:0

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