java数据结构
liaomin416100569
这个作者很懒,什么都没留下…
展开
-
何谓数据结构
数据结构是在整个计算机科学与技术领域上广泛被使用的术语。它用来反映一个数据的内部构成,即一个数据由那些成分数据构成,以什么方式构成,呈什么结构。数据结构有逻辑上的数据结构和物理上的数据结构之分。逻辑上的数据结构反映成分数据之间的逻辑关系,而物理上的数据结构反映成分数据在计算机内部的存储安排。数据结构是数据存在的形式。数据结构是信息的一种组织方式,其目的是为了提高算法的效率,它通常与一组算法的集原创 2010-04-23 14:19:00 · 549 阅读 · 0 评论 -
springfox集成openapi实践
一 。openapi介绍 OpenAPI的前身是swagger规范。Swagger是一套有助于前后端分离,接口管理和测试工具集 SwaggerTM是一个用于描述和文档化RESTful接口的项目。 Swagger规范定义了一系列的文件,用以描述API。这些文件可以被Swagger-UI项目用于展示API,也可以被Swagger-Codegen项目用于生成代码。一些其他的工具也可以利用这些文件,例...原创 2018-03-14 17:01:41 · 1127 阅读 · 0 评论 -
NIO系列之MINA
一。MINA架构 Apache Mina是一个能够帮助用户开发高性能和高伸缩性网络应用程序的框架。它通过Java nio技术基于TCP/IP和UDP/IP协议提供了抽象的、事件驱动的、异步的APIMINA是应用程序(服务端和客户端)和网络层间(TCP UDP 内存通信)的桥梁深入mina内部架构mina分为以下三层: IOService 用于接受连接 处理io请求 IOFilterCh...原创 2018-03-08 14:34:14 · 377 阅读 · 0 评论 -
JAVA中IO流模型BIO,NIO,AIO
一。BIO,NIO,AIO简介要弄懂这些io模型必须弄懂以下这些概念同步:的是用户进程触发IO操作并等待或者轮询的去查看IO操作是否就绪 比如火车站出站口等待来深圳过年的父母 只有接到父母才能做其他事情 等待过程 不停的电话父母 火车是否到站 是否出站 直到接到父母异步:指用户进程触发IO操作以后便开始做自己的事情,而当IO操作已经完成的时候会得到IO完成的通知(异步的特点就是通知) 告诉朋友,朋...原创 2018-03-07 14:56:28 · 901 阅读 · 1 评论 -
JVM的年轻代
1.为什么会有年轻代 我们先来屡屡,为什么需要把堆分代?不分代不能完成他所做的事情么?其实不分代完全可以,分代的唯一理由就是优化GC性能。你先想想,如果没有分代,那我们所有的对象都在一块,GC的时候我们要找到哪些对象没用,这样就会对堆的所有区域进行扫描。而我们的很多对象都是朝生夕死的,如果分代的话,我们把新创建的对象放到某一地方,当GC的时候先把这块存“朝生夕死”对象的区域进行回收,转载 2013-12-05 09:00:59 · 835 阅读 · 0 评论 -
java获取汉字的拼音 简单版
public class PinyinUtils { static String[] dd = "a,20319,ai,20317,an,20304,ang,20295,ao,20292,ba,20283,bai,20265,ban,20257,bang,20242,bao原创 2011-08-19 14:53:42 · 1248 阅读 · 0 评论 -
什么是程序中的数字指纹
<br />散列(hash) <br /><br /> 流行的算法有MD5和SHA1,就是不同的任何两组内容通过一组运硕裘到的结果也不同,我们称为hash数,或者可以叫做数字指纹。 <br /><br /> 比如我们常常将系统的登录口令通过MD5运算后存放在口令表里,登录的时候就将用户输入的口令通过MD5运算后和口令表中的相关项对比,如相同就通过认证,否则口令错误。原创 2010-11-05 14:29:00 · 1661 阅读 · 0 评论 -
hash算法的介绍 【清晰易懂】
Hash表是一种数据结构提供快速的存取和查找,他是基于数组的,数组创建后大小是固定的难以拓展,当然可以复制数据到更大的数组,但是非常消耗性能,如果数据量固定,需要快速查询时 hash表是一个不错的选择数组只能以数字作为下标而不能以字符串作为下标所以要考虑将字符串转换为唯一的数字这个过程叫做hash化过程由hash函数完成,使用hash函数插入数据到数组后,数组被称为hash表Hash函数1叠加法假如给字母编个号码空格0 a 1 ,b2 c 2, 27 zHash函数采用加法运算 比如 abc = 1原创 2010-10-28 16:22:00 · 988 阅读 · 0 评论 -
哈希(Hash)与加密(Encrypt)的基本原理、区别及工程应用
0、摘要 今天看到吉日嘎拉的一篇关于管理软件中信息加密和安全的文章,感觉非常有实际意义。文中作者从实践经验出发,讨论了信息管理软件中如何通过哈希和加密进行数据保护。但是从文章评论中也可以看出很多朋友对这个方面一些基本概念比较模糊,这样就容易“照葫芦画瓢”,不能根据自身具体情况灵活选择和使用各种哈希和加密方式。本文不对哈希和加密做过于深入的讨论,而是对哈希和加密的基本概念和原理进行阐述、比较,并结合具体实践说明如何选择哈希和加密算法、如何提高安全性等问题,使朋友们做到“知其然,知其所以然”,这样就能转载 2010-10-28 11:26:00 · 787 阅读 · 0 评论 -
单链表
为了将存储表元素的所有单元用指针串联起来,我们让每个单元包含一个元素域和一个指针域,其中的指针指向表中下一个元素所在的单元。例如,如果表是a1,a2,…,an ,那么含有元素ai的那个单元中的指针应指向含有元素ai+1的单元(i=1,2,…,n-1)。含有an的那个单元中的指针是空指针null。此外,通常我们还为每一个表设置一个表头单元head,其中的指针指向开始元素中所在的单元,但表头单元hea原创 2010-04-27 10:33:00 · 890 阅读 · 1 评论 -
线性表定义
线性表是最简单、最常用的一种数据结构。是由n(n≥0)个数据元素(结点)a1,a2,…,an组成的有限序列。 对于非空的线性表: ① 有且仅有一个开始结点a1,没有直接前趋,有且仅有一个直接后继a2; ② 有且仅有一个终结结点an,没有直接后继,有且仅有一个直接前趋an-1; ③ 其余的内部结点ai(2≤i≤n-1)都有且仅有一个直接前趋ai-1。 ④ 其余的内原创 2010-04-27 10:18:00 · 1764 阅读 · 0 评论 -
二叉排序树
二叉排序树(Binary Sort Tree)又称二叉查找(搜索)树(Binary Search Tree)。其定义为:二叉排序树或者是空树,或者是满足如下性质的二叉树:①若它的左子树非空,则左子树上所有结点的值均小于根结点的值;②若它的右子树非空,则右子树上所有结点的值均大于根结点的值;③左、右子树本身又各是一棵二叉排序树。 上述性质简称二叉排序树性质(BST性质),故二叉排序树实际上是满足原创 2010-04-26 14:53:00 · 616 阅读 · 0 评论 -
二叉树
二叉树概念 http://sjjp.tjuci.edu.cn/sjjg/DataStructure/DS/web/shu/shu6.1.1.2.htm 代码实现 package com.data.tree;import java.util.ArrayList;import java.util.List;//链表形式遍历二叉树public class BinaryT原创 2010-04-26 14:40:00 · 458 阅读 · 0 评论 -
栈的定义
栈的定义及基本运算一、栈的定义 栈(stack)是限制线性表中元素的插入和删除只能在线性表的同一端进行的一种特殊线性表。允许插入和删除的一端,为变化的一端,称为栈顶(Top),另一端为固定的一端,称为栈底(Bottom)。 (1)通常称插入、删除的这一端为栈顶(Top),另一端称为栈底(Bottom)。 (2)当表中没有元素时称为空栈。 (3)栈为后进先出(Last In First原创 2010-04-27 16:59:00 · 1359 阅读 · 0 评论 -
双向链表
与单链表上的插入和删除操作不同的是,在双链表中插入和删除必须同时修改两个方向上的指针。 package com.data.tree;//双向链表 作者廖敏public class LinkList { // 定义单链表头用于标示第一个元素 private transient ELinkList head = new ELinkList(null, null, null); // 定义单原创 2010-04-27 16:14:00 · 503 阅读 · 0 评论 -
工作流引擎activiti
一。activiti简介 Activiti项目是一项新的基于Apache许可的开源BPM平台,从基础开始构建,旨在提供支持新的BPMN 2.0标准,包括支持对象管理组(OMG),面对新技术的机遇,诸如互操作性和云架构,提供技术实现。 创始人Tom Baeyens是JBoss jBPM的项目架构师,以及另一位架构师Joram Barrez,一起加入到创建Alfresco这项首次...原创 2018-03-28 17:15:36 · 2671 阅读 · 0 评论