- 博客(14)
- 资源 (32)
- 收藏
- 关注
转载 Java数据结构之哈夫曼树
感谢suhuanzheng7784877的分享,原文链接地址:点击打开链接1. 哈夫曼树哈夫曼树也称作最优二叉树,当树中的节点带了权重信息了,带权路径长度最小的二叉树叫做最优二叉树。带权路径长度=sum(权重*度)。sum代表每个节点的之和。加入有如下带权重的节点。 权重分别是1、5、8、4。那么关于这些零散的节点,最优二叉树该如何构建呢?首先先将离散节点从小到
2016-06-20 22:44:44 852
转载 java数据结构之二叉树的前中后遍历
感谢笃志近思的分享。原文链接地址为:点击打开链接二叉树的定义:二叉树是树形结构的一个重要类型。许多实际问题抽象出来的数据结构往往是二叉树的形式,即使是一般的树也能简单地转换为二叉树,而且二叉树的存储结构及其算法都较为简单,因此二叉树显得特别重要。 二叉树(BinaryTree)是n(n≥0)个结点的有限集,它或者是空集(n=0),或者由一个根结点及两棵互不相交的、分别
2016-06-20 17:16:18 3003
原创 java数据结构举例-幻方实现
今天介绍一下数组的一些例子,例如利用数组实现幻方。幻方又叫做魔方阵,幻方阵,游戏规则是在一个n*n的矩阵中填入1到n*n的数字,使得买一行,每一列,每条对角线的累加相等。java算法的实现:package array;public class ArrayHF { //幻方的实现 public int[][] sQueue(int n){ int[][] a=new int[n
2016-06-07 18:10:47 2678
原创 java数据结构凯撒算法的实现
今天介绍一下凯撒密码的实现,凯撒密码核心是基于字符串实现的。凯撒密码中心思想:凯撒密码是一种简单的信息加密方法,通过将信息中的每个字母在字母表中后移动常量k,以实现加密。java的算法实现:package string;public class S_KaiSa { //凯撒密码的实现 public char[] kaiSa(char[] s,int k){ char[] t=
2016-06-07 18:01:50 1603
原创 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)
2016-06-07 11:52:56 2123
原创 java数据结构之字符串的模式匹配算法
java中String提供了很多的字符串处理方法其中就包括子串的匹配。今天就来介绍一下字符串中的子串的匹配算法。分为两种:一种为朴素的模式匹配算法(简称BF算法),改进的模式匹配算法(简称KMP算法)。下面首先来介绍一下BF算法的中心思想:这是一种带有回溯的匹配算法,简称BF算法。实现过程是从主串S的第一个字符开始和模式T的第一个字符开始比较,若相等则继续比较二者后续的的字符;否则从主
2016-06-07 11:18:00 1865 1
原创 java数据结构之链式队列的实现
今天介绍一下数据结构中的链式队列,和线形队列相同的是它也有队头front,和队尾rear。规则和线形队列相同也是先进先出(FIFO),队尾进,队头出。下面看具体的链式队列的具体实现案例:package queue;/** * @ClassName: CirQueue * @Description: 链式队列 * @date 2016年6月3日 下午19:55 * @param
2016-06-03 21:45:44 3014
原创 java数据结构之线性队列的实现
今天介绍一下数据结构中的线性队列以及线性队列中的缺点,和改善线性队列的循环线性队列操作。队列的定义:队列(Queue)是只允许在一端进行插入,而在另一端进行删除的运算受限的线性表。(1)允许删除的一端称为队头(Front)。(2)允许插入的一端称为队尾(Rear)。(3)当队列中没有元素时称为空队列。(4)队列亦称作先进先出(First In First
2016-06-03 21:38:55 1442
原创 java数据结构之(顺序栈+链式栈)
今天介绍一下数据结构中的栈。栈实现和线性表实现差不多都是有两种实现方式,一种是顺序栈,另一种就是链式栈。下面先介绍一下顺序栈的实现方式:package stack;import java.util.Arrays;/** * @ClassName: ArrayStack * @Description: 顺序栈 * @date 2016年6月2日 下午21:01 * @param
2016-06-02 21:57:10 1276
原创 java中复制数组的4中方法
在开发的过程中很多情况都要对数组进行复制,下面举例介绍一下java中四种数组的复制。第一种:通过for循环进行数组的复制,例如: Object[] num={1,2,3,4,5}; Object[] num1=new Object[num.length]; for(int i=0;i<num.length;i++){ num1[i]=num[i]; } for(Ob
2016-06-02 18:10:13 753
原创 java数据结构之单链表应用之一元多项式求和
利用java中单链表进行一元多项式求和,下面直接看案例分析:package LinkedList;import LinkedList.Elem.Node;public class LinkedAdd { public Node add(Elem e1,Elem e2){ Node pre=e1.getNode(); Node qre=e2.getNode(); Node p=
2016-06-01 22:36:28 6046
原创 java数据结构之顺序表应用之大整数求和
本章讲顺序表的应用之大整数求和。java中int,long,float,double都有他们自己的精度值,如果超过精度就没办法进行运算了。这里可以用顺序表进行大整数运算。下面上代码看具体案例,进行解析:package SequenceList;public class LargeIntegerSum { public int[] add(int aa[],int bb[]){ in
2016-06-01 22:29:22 1533
原创 solr6.0配置中文分词器IK Analyzer
solr6.0中进行中文分词器IKAnalyzer的配置和solr低版本中最大不同点在于IKAnalyzer中jar包的引用。一般的IK分词jar包都是不能用的,因为IK分词中传统的jar不支持solr6.0这个高版本的,所以就会发送运行错误的界面。下面就来介绍一下solr6.0中中文分词器IKAnalyzer的配置。想学习分布式、微服务、JVM、多线程、架构、java、python...
2016-06-01 10:57:31 21816 3
原创 java中实现投票选择班长的案例
本文通来实现投票选择班长的案例来掌握JAVA中Scanner和数组,while循环还有Comparable的用法下面看具体代码实现部分:package test;import java.util.Arrays;import java.util.Scanner;public class Test { public static void main(String[] args) {
2016-06-01 10:06:55 7037 2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人