java数据结构之线性队列的实现

今天介绍一下数据结构中的线性队列以及线性队列中的缺点,和改善线性队列的循环线性队列操作。队列的定义:队列(Queue)是只允许在一端进行插入,而在另一端进行删除的运算受限的线性表。(1)允许删除的一端称为队头(Front)。(2)允许插入的一端称为队尾(Rear)。(3)当队列中没有元素时称为空队列。(4)队列亦称作先进先出(First In First …… 阅读全文

java数据结构之链式队列的实现

今天介绍一下数据结构中的链式队列,和线形队列相同的是它也有队头front,和队尾rear。规则和线形队列相同也是先进先出(FIFO),队尾进,队头出。下面看具体的链式队列的具体实现案例:package queue;/** * @ClassName: CirQueue * @Description: 链式队列 * @date 2016年6月3日 下午19:55 * @param …… 阅读全文

java数据结构之字符串的模式匹配算法

java中String提供了很多的字符串处理方法其中就包括子串的匹配。今天就来介绍一下字符串中的子串的匹配算法。分为两种:一种为朴素的模式匹配算法(简称BF算法),改进的模式匹配算法(简称KMP算法)。下面首先来介绍一下BF算法的中心思想:这是一种带有回溯的匹配算法,简称BF算法。实现过程是从主串S的第一个字符开始和模式T的第一个字符开始比较,若相等则继续比较二者后续的的字符;否则从主 …… 阅读全文

java数据结构之多维数组实现

多维数组其实就是数组的一种扩展形式。这里介绍几种特殊的多维数组即特殊的矩阵。1.对称矩阵的压缩存储算法:矩阵中的所有数据通过一定的规律存储在一维数组中。其中k=j*(j-1)/2+i-1。其中j和i是矩阵中的j和i而k是一维数组的下标号。2.三角矩阵的压缩存储:矩阵下标i和j的在一维数组k中对应的公式为:当ik=i*(i-1)/2+j-1;当i>jk=n*(n+1) …… 阅读全文

java数据结构凯撒算法的实现

今天介绍一下凯撒密码的实现,凯撒密码核心是基于字符串实现的。凯撒密码中心思想:凯撒密码是一种简单的信息加密方法,通过将信息中的每个字母在字母表中后移动常量k,以实现加密。java的算法实现:package string;public class S_KaiSa { //凯撒密码的实现 public char[] kaiSa(char[] s,int k){ char[] t= …… 阅读全文

java数据结构举例-幻方实现

今天介绍一下数组的一些例子,例如利用数组实现幻方。幻方又叫做魔方阵,幻方阵,游戏规则是在一个n*n的矩阵中填入1到n*n的数字,使得买一行,每一列,每条对角线的累加相等。java算法的实现:package array;public class ArrayHF { //幻方的实现 public int[][] sQueue(int n){ int[][] a=new int[n …… 阅读全文