自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

ZCC的专栏

每天坚持看书和写作,相信每天的一小步,将会是人生的一大步! 形成、知化、流动、屏读、使用、共享、过滤、重混、互动、追踪、提问、开始!

  • 博客(62)
  • 资源 (129)
  • 收藏
  • 关注

原创 字符串

(1)字符与字符串   字符:一般被认为是字母、数字、符号和字。字母就是A、B、C、a、b、c等,而数字 1,2,3等,字可能是中文和英文字等。  字符串是有字符组成的。一般编程语言中用String类型来表示。在java 中String的实现通过char数组实现的。   (2)字符串的全排列: 比如给定一个字符串是xyz,则其全排列是xyz, xzy, yxz,yzx,zxy,zyx

2017-04-27 16:37:09 499

转载 数据结构与算法系列

最近抽空整理了"数据结构和算法"的相关文章。在整理过程中, 对于每种数据结构和算法分别给出"C"、"C++"和"Java"这三种语言的实现;实现语言虽不同,但原理如出一辙。因此,读者在了解和学习的过程中,择其一即可!   CC++Java线性结构1. 数组、单链表和双链表数组、单链表和双链表数组、单

2017-04-27 14:43:49 443

原创 最短路径-Floyd算法

在最短路径的求解过程,无非中有两种可能:        (1)一种是能够直接到达,是最短路径;       (2)另一种是需要一些顶点才能到达,也是最短路径。       Floyd算法的伪代码如下:            Floyd算法的具体实现代码如下:         最短路径算法总结:

2017-04-27 14:24:17 865

原创 最短路径(邻接表)-Dijkstra算法

最短路径(邻接表)-Dijkstra算法:生成的图采用邻接表的存储方式。       具体的实现代码如下:package com.threeTop.www;import java.util.Hashtable;import java.util.Stack;/** * 邻接表存储方式的Dijkstra算法 * @author wjgs * */public class

2017-04-26 17:04:40 8750 2

原创 最短路径(邻接矩阵)-Dijkstra算法

Dijkstra算法又叫作迪杰斯特拉算法,是利用"贪心法"(在对问题进行求解时,总是做出在当前看来最好的选择策略)设计算法的一个成功范例。        适用条件:带权无环和无负权值       举个栗子:

2017-04-26 16:16:07 12509 2

原创 图的邻接表存储下的广度优先遍历

图的邻接表存储下的广度优先遍历:需要借助队列实现.    图的邻接表存储下的广度优先遍历实现代码如下:/** * 邻接表广度优先遍历 * */ public void breadFirstTravel() { System.out.println("邻接表广度优先遍历为:"); //初始化队列 Queue queue=new LinkedList(); /

2017-04-25 17:59:26 3236

原创 图的邻接矩阵存储下的广度优先遍历

图的邻接矩阵存储下的广度优先遍历:就像树的按层次遍历,需要借助队列实现。    图的邻接矩阵存储下的广度优先遍历的实现代码如下:/*** * * 邻接矩阵广度优先遍历 * */ public void breadthFirstTravel() { System.out.println("邻接矩阵的广度优先遍历:"); //初始化队列,LinkedList实现

2017-04-25 16:44:08 3249

原创 图的邻接表存储下的深度优先遍历

在图的邻接表的存储下进行的深度优先遍历:需要用到哈希表来辅助。   具体的实现代码如下:package com.threeTop.www;/** * 邻接表节点的定义 * @author wjgs * */public class ListGraphNode { //增加索引 int index; //值 int value; //指向下一个节点的指针(

2017-04-25 15:35:48 2234

原创 图的邻接矩阵存储下的深度优先遍历

深度优先遍历(DFS): 借助栈进行遍历,深度优先遍历的序列不是唯一的,邻接矩阵存储的时间复杂度为O(n*n),邻接表的存储的时间复杂度为O(n+e).     邻接矩阵的深度优先遍历的实现代码如下:package com.threeTop.www;import java.util.Stack;public class MatrixGraph { //通过下标映射元素值 p

2017-04-25 14:34:24 6026 1

原创 图的邻接表存储

邻接表表示法和散列表类似,也是用一个数组,每个数组元素有个链表。其适用条件(边数不多):图的边数     图邻接表存储的实现代码如下:package com.threeTop.www;/** * 邻接表节点的定义 * @author wjgs * */public class ListGraphNode { //值 int value; //指向下一个节点的指针

2017-04-24 20:58:55 1081

原创 图的邻接矩阵存储

一般的图会使用二元组的方式来描述,G=(V,E) ,其中V 叫作顶点集,E叫作边集。       图分为: (1)无向图 (2)有向图        图的表示和存储方式:  (1)邻接矩阵表示法 (2)邻接表表示法       邻接矩阵:存储为二维数组

2017-04-24 20:00:08 791

转载 关键路径C++实现

AOE网:在一个表示工程的带权有向图中,用顶点表示事件,用有向边表示活动,边上的权值表示活动的持续时间,称这样的有向图叫做边表示活动的网,简称AOE网。AOE网中没有入边的顶点称为始点(或源点),没有出边的顶点称为终点(或汇点)。AOE网的性质:⑴ 只有在某顶点所代表的事件发生后,从该顶点出发的各活动才能开始;⑵ 只有在进入某顶点的各活动都结束,该顶点所代表的事件才能发生。

2017-04-24 15:14:53 7111 2

原创 红黑树

红黑树:本质是一棵二叉查找树,其插入、删除、查找操作的时间复杂度为O(logn).   红黑树的特征:   (1)每个节点都有颜色,要么是红色,要么是黑色;   (2)根节点是黑色的   (3)所有的叶节点都是黑色的,并且所有的叶节点都为空;   (4)如果一个节点的红色的,那么它的两个孩子节点一定是黑色的   (5)任意节点到叶节点NIL指针的每一条路径都包含相同数目的黑

2017-04-21 16:13:16 550

原创 堆排序

堆排序就是对数组进行初始化堆、依次插入元素和删除元素的操作。堆排序很适合对大量的数据进行排序,总的时间复杂度为O(nlogn).      堆排序的实现代码如下: /** * 堆排序的实现 * */ public void sort() { if(isEmpty()) { throw new Run

2017-04-21 15:58:08 292

原创

堆是一种特殊的数据结构,是一种特殊形式的完全二叉树。      堆分为:(1)大顶堆,大顶堆中每个节点的值都不大于其父节点的值                  (2)小顶堆,小顶堆中每个节点的值都不小于其父节点的值      堆分为二项式堆、斐波那契堆、二叉堆(完全二叉堆)。      堆本身就是完全二叉树,可以使用一个一维数组,0位置用来存储元素的个数,1-n用来存储元素。

2017-04-21 15:35:51 350

原创 哈夫曼树

哈夫曼树的构建步骤:           (1)将每个数据作为一棵只有树根的树,组成一个森林。         (2)将树的带权路径的长度进行从小到大排序。         (3)选择权值最小的两棵树进行合并,新生成的节点为两棵树的权值之和。         (4)重复第2,3步,直到最终的森林中只有一棵树为止。        哈夫曼树的具体应用: 哈夫曼编码.

2017-04-21 13:51:49 554

翻译 B-树、B+树、B*树

一棵m阶B-树(B树)是一棵平衡的m-路查找树,它或者是一棵空树,或者满足如下条件:     (1)根节点至少有两个子节点(除非这棵树只有自己一个根节点)     (2)除根节点和叶子节点外,所有节点至少有m/2个子节点     (3)所有叶节点都在同一层。      如果m等于2,则它是一棵满二叉树。

2017-04-21 09:57:01 640

原创 平衡二叉树

平衡二叉树(AVL树):可以是一棵空树(1)左右子树都是高度平衡的二叉树(2)左右子树的高度之差的绝对值不大于1平衡二叉树查找的平均情况和最坏情况都是O(logn),其插入和删除操作的时间复杂度也是O(logn),并且在插入、删除之后高度仍然保持相对平衡。

2017-04-21 09:08:39 398

原创 二叉查找树

二叉查找树或者是棵空树,或者满足下面的特性:      (1)如果它的左子树不为空,那么它的左子树上的任意节点的值都小于根节点的值。    (2)如果它的右子树不为空,那么它的右子树上任意节点的值都大于根节点的值。    (3)同样,它的左子树和右子树也都是二叉查找树。      二叉查找树的代码实现如下:package com.threetop.www;/**

2017-04-20 23:05:51 357

原创

树的种类很多,有二叉树、平衡二叉树、B树、B+树、哈夫曼树、B-树,B*树、红黑树、trie树等。

2017-04-20 20:45:40 313

原创 查找算法总结

本章介绍了几个基础的查找算法:顺序查找、二分查找、行列递增的矩阵查找、分块查找。以后还会介绍其他查找算法:深度优先查找、广度优先查找、二叉树查找等。      顺序查找:不需要数列本身有序,查找性能太差,平均查找长度为(1+n)/2,时间复杂度为O(n).      二分查找:要求数列有序     行列递增的矩阵查找:按照杨氏矩阵特殊的存储方式     分块查找:顺序查找和二分

2017-04-19 09:32:31 429

原创 查找---分块查找

分块查找要求把一个数据分为若干块,每一块里面的元素可以是无序的,但是块与块之间的元素需要是有序的。(对于一个非递减的数列来说,第i块中的每个元素一定比第i-1块中的任意元素大)      分块查找的实现代码如下:package com.threeTop.www;import java.util.ArrayList;/*** * 分块查找的实现 * @author wjgs *

2017-04-18 18:44:33 5562 2

原创 查找---行列递增的矩阵查找

有一个m行n列的矩阵,在程序中我们可以使用二维数组来表示,而这个矩阵的每一行是递增的,每一列也是递增的,这种行和列分别递增的结构叫作杨氏矩阵。  举个例子如下: 直接定位查找法:     通过杨氏矩阵查询代码如下:package com.threeTop.www;/** * 通过杨氏矩阵查找元素 * @author wjgs * */public clas

2017-04-18 12:09:40 647

原创 查找--二分查找

二分查找(折半查找)要求:(1)数列有序                                          (2)数列使用顺序存储结构(比如数组)  二分查找的递归和非递归的实现:package com.threeTop.www;import java.util.Arrays;/** * 递归和非递归实现的二分查找 * @author wjgs *

2017-04-17 22:22:51 304

原创 查找---顺序查找

顺序查找:从头开始一个一个地往后逐个比较,知道找到与给定的关键字相同的数。        顺序查找的实现代码如下:package com.threeTop.www;/*** * 顺序查找的实现 * @author wjgs * */public class SequentialSearch { private int []array; //构造函数实现初始

2017-04-17 21:33:44 466

转载 mybatis思维导图

mybatis简介MyBatis 是支持普通 SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis 消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。MyBatis 使用简单的 XML或注解用于配置和原始映射,将接口和 Java 的POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。直接上思维导图

2017-04-17 19:24:59 2175 1

原创 推荐系统

推荐:通过对嗜好的模式进行预测,借以发现你尚未知晓,却合乎心意的新事物。        推荐引擎分类:(1)基于用户  (2)基于物品        具体的实现代码如下:package mia.recommender.ch02;import org.apache.mahout.cf.taste.common.TasteException;import org.apache.mah

2017-04-16 21:37:24 692

原创 初始Mahout

Mahout 在理论上可以实现所有的机器学习技术,但实际上当前它仅关注机器学习的三个领域,即推荐引擎(协同过滤)、聚类和分类。        安装Mahout:       (1) java 和IDE(eclipse、netbeans、intellij IDEA)       (2)安装Maven       (3)安装Mahout       (4)安装Hadoop   

2017-04-16 21:03:32 739

转载 二分查找和排序算法

《Algorithms Unlocked》是 《算法导论》的合著者之一 Thomas H. Cormen 写的一本算法基础,算是啃CLRS前的开胃菜和辅助教材。如果CLRS的厚度让人望而生畏,这本200多页的小读本刚好合适带你入门。书中没有涉及编程语言,直接用文字描述算法,我用 JavaScript 对书中的算法进行描述。二分查找在排好序的数组中查找目标值x。在p到r区间中

2017-04-16 20:47:10 679

转载 深度学习框架总结

深度学习库比较库名主语言从语言速度灵活性文档适合模型平台上手难易开发者模式TensorfloC++cuda/python/Matlab/Ruby/R中等好中等CNN/RNNLinux,OSX难Google

2017-04-16 14:24:16 1173

原创 排序算法性能对比

相关排序算法性能对比:

2017-04-16 11:45:30 354

原创 排序算法---简单选择排序

简单选择排序:在序列中依次选择最大(最小)的数,并将其放到待排序的数列的起始位置。        简单选择排序的代码实现:package com.threeTop.www;/** * 简单选择排序的实现 * @author wjgs * */public class SelectSort { private int[]array; //构造函数进行初始化 publ

2017-04-16 11:39:03 368

原创 排序算法---希尔排序

希尔排序的基本思想(划分):把待排序的数列按照一定的增量分割成多个子数列,这些子数列不是连续的,然后对每个子数列进行插入排序。接着增量逐渐减小,在减小到1后直接使用插入排序处理数列。

2017-04-16 11:20:27 357

原创 排序算法---插入排序

插入排序:(1)直接插入排序  (2)二分插入排序        插入排序:往数列里面插入数据元素即往一个已经排好序的待排序的数列中插入一个数,使得插入这个数之后,数列仍然有序。        插入排序的实现代码如下:package com.threeTop.www;/** * 插入排序的实现 * @author wjgs * */public class InsertS

2017-04-16 10:46:00 1046

原创 排序算法---快速排序

快速排序是对冒泡排序的改进,通过一趟排序将要排序的数据分割成独立的两个部分,其中一部分的所有数据比另一个部分的所有数据要小,再按照这种方法递归进行,使得整个数据变成有序序列。                快速排序有一个比较简单的解法--递归,具体的实现代码如下:package com.threeTop.www;/** * 快速排序的递归实现 * @author wjgs *

2017-04-15 22:01:24 401

原创 排序算法---冒泡排序

冒泡排序:重复地走访要排序的数列,一次比较两个数据元素,如果顺序不对则进行交换,并且一直重复这样的走访操作,直到没有要交换的数据元素为止。     冒泡排序排序过程:

2017-04-15 16:58:46 397

原创 排序算法---桶排序

算法分析:找出最好、最适合的算法来解决问题,而算法复杂度可以分为两个部分:  时间复杂度和空间复杂度、稳定性。      (1)快而简单的排序---桶排序      桶排序的适用场景:数据分布相对比较均匀或数据跨度范围并不是很大。      桶排序的时间复杂度: O(n+m),n为待排序的元素的个数,m为桶的个数。            桶排序的实现代码如下:packa

2017-04-15 16:20:44 524

原创 汉诺塔的递归实现

递归实现汉诺塔问题:package com.threetop.www;/** * 递归解汉诺塔问题 * @author wjgs * */public class HanoiTest { public static void hanoi(int n,char A,char B,char C) { if(n==1) { m

2017-04-14 16:54:24 418

原创 链表

链表是一种物理上非连续、非顺序的存储结构,数据元素之间的顺序是通过每个元素的指针关联的。        链表有一系列节点组成,每个节点一般至少会包含两部分的信息:(1)元素数据 (2)指向下一个元素的指针        链表分类: (1)单向链表和双向链表  (2)静态链表(数组实现) 、动态链表(指针)        链表的操作: 创建、插入、删除、输出        链表的特点

2017-04-14 16:21:17 6544 4

原创 队列

队列就是一个队伍,由一段连续的存储空间组成,是满足先进先出的数据结构。      队列是一种受限的数据结构,插入操作只能从一端操作,这一端叫做对尾;而移除操作也只能从另一端操作,这一端叫做队头。      队列的实现方式:          (1)数组: 顺序队列、循环队列          (2)链表       队列的适用场景: 缓冲器、解耦        队列

2017-04-14 10:06:45 303

CNKI E-Study

CNKI E-Study

2017-08-05

junit最新版

junit最新版jar包

2017-08-03

CSDN博客导出工具

CSDN博客导出工具

2017-07-30

前端框架对比

前端框架对比

2017-07-30

githubdesktop

github离线版

2017-07-24

微信搜索公众号

微信搜索公众号所有的文章

2017-07-23

微信python爬虫

微信python爬虫,爬取图片,昵称等信息

2017-07-23

python_Scrapy 附属模块

python_Scrapy

2017-07-21

Java编程思想

Java编程思想思维导图

2017-07-21

jdk1.7稳定版

jdk1.7

2017-07-16

metaseeker网络爬虫

metaseeker工具

2017-07-15

(编程珠玑第二版

编程珠玑第二版中英文

2017-07-14

编程珠玑详解

编程珠玑

2017-07-11

计算机核心期刊

计算机核心期刊汇总

2017-07-05

最新的git版本

最新的git

2017-06-28

人月神话总结

人月神话总结

2017-06-24

卷积神经网络

卷积神经网络详解

2017-06-06

linux就该这么学

linux就该这么学

2017-06-02

专利申请基本知识

专利申请基本知识

2017-06-02

超人学院吴超老师hadoop资料文档和笔记

超人学院吴超老师hadoop资料文档和笔记

2017-05-31

学术论文写作方法和技巧

该教程从论文发表流程包括确定方向、确定问题、确定思路、确定方法、实验验证、撰写论文的几个过程出发,详细阐述了撰写学术论文的注意事项和技巧。

2019-02-23

java集合框架

集合框架是一个用来代表和操纵集合的统一架构。所有的集合框架都包含如下内容: 接口:是代表集合的抽象数据类型。接口允许集合独立操纵其代表的细节。在面向对象的语言,接口通常形成一个层次。 实现(类):是集合接口的具体实现。从本质上讲,它们是可重复使用的数据结构。 算法:是实现集合接口的对象里的方法执行的一些有用的计算,例如:搜索和排序。这些算法被称为多态,那是因为相同的方法可以在相似的接口上有着不同的实现。

2018-01-31

深度学习算法

谷歌大脑的Geoffrey E. Hinton的胶囊(Capsule)论文在2017年10月26号发表后深度学习架构似乎又有个新的变革。

2017-12-26

阿里巴巴Java开发手册

《阿里巴巴Java开发手册》系统性地从编程、数据库、异常日志、工程结构、安全、单元测试六大方面,总结出优秀Java开发者必备的技术素养。时值手册发布一周年之际,阿里官方对外正式公开《阿里巴巴Java开发手册》终!极!版!!!

2017-09-25

scrapy爬虫项目

Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架。 可以应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中。所谓网络爬虫,就是一个在网上到处或定向抓取数据的程序,当然,这种说法不够专业,更专业的描述就是,抓取特定网站网页的HTML数据。抓取网页的一般方法是,定义一个入口页面,然后一般一个页面会有其他页面的URL,于是从当前页面获取到这些URL加入到爬虫的抓取队列中,然后进入到新页面后再递归的进行上述的操作,其实说来就跟深度遍历或广度遍历一样。

2017-09-05

mstsc远程连接工具

mstsc远程连接工具

2017-08-24

echarts官网实例

echarts

2017-08-24

NoSQL Manager for MongoDB

NoSQL Manager for MongoDB

2017-08-17

git工具下载

git工具下载

2017-08-17

MongoVUe连接工具

MongoVUe

2017-08-17

python写网络爬虫

python写网络爬虫

2017-08-14

大神博客技术

大神博客

2017-08-14

tankwar游戏

tankwar游戏

2017-08-12

vue音乐播放器

vue音乐播放器

2017-08-12

CSDN博客导出

CSDN博客导出

2017-08-10

精讲粒子群算法

粒子群算法

2017-08-09

创意简历书写

创意简历书写

2017-08-08

jquery项目

jquery项目

2017-08-08

黑客帝国代码

黑客帝国

2017-08-08

java设计模式

java设计模式

2017-08-08

空空如也

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

TA关注的人

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