JAVA
weixin_30746129
这个作者很懒,什么都没留下…
展开
-
Bootstrap使用套路
Boostrap相应式布局(跟随设备自动调整页面),有许多现成的组件,简化前端开发。1. 到Bootstrap官方网站下载包:https://github.com/twbs/bootstrap/releases2.解压得到到包,然后复制css、front、js文件夹到项目中,这些文件夹下面的一些文件名有的带min,有的不带。带min的是精简版本,可以加快传输,一般使用在正式部署中;不带m...原创 2020-03-17 15:37:28 · 129 阅读 · 0 评论 -
java数据结构之普里姆求最小生成树
普里姆算法求最小生成树 1. 求最小生成树就是在包含n个顶点的连通图中,找出只有(n-1)条边包含所有n个顶点的连通子图, 也就是所谓的极小连通子图 算法如下: 1. 设G=(V,E)是联通网,T=(U,D)是最小生成树,V,U是顶点集合,ED是边的集合 2. 若从顶点u开始构筑最小生成树,则从集合V中取出顶点u放入集合...原创 2019-10-30 14:37:17 · 159 阅读 · 0 评论 -
java数据结构之图
图: 一种多对多的数据结构,可以使用邻接矩阵来存储数据(邻接矩阵:假如有M个点,则创建 M * M 的邻接矩阵,【0,1】点表示0到1的点,如果其值不为0,则表示0到1的权值),如果边比较少,矩阵稀疏此方式比较浪费内存;这时候可以使用邻接表来存储数据(邻接表: 创建一个长度为M的数组a[M], 其中a[0]表示第0个节点,其值为一个链表,链表立里保存的是与第0个节点相链接的点),...原创 2019-10-30 14:35:00 · 154 阅读 · 0 评论 -
java数据结构之平衡二叉树
平衡二叉树: 解决了二叉排序树退化成链表的问题,每次插入新的节点时,都判断一下树的平衡是否已经被打破(每一颗树的左右子树高度差<=1),如果发现已经打破,则根据实际情况进行左旋转、右旋转、左右双旋转、右左双旋转。代码:package cn.agan.avltree;/** * 平衡二叉树:它是一颗空树,或它的左右两个子树的高度差的绝对只不超过1,并且左右两个...原创 2019-10-23 14:29:50 · 122 阅读 · 0 评论 -
java数据结构之二叉排序树
二叉排序树: 二叉排序树的左子子树的值小于父节点的值,右子树的值大于父节点的值,与父节点相等的值可约定放在左或右子树。代码:package cn.agan.binarysorttree;public class BinarySortTree { public static void main(String[] args) { int a[] = {7,...原创 2019-10-23 10:27:26 · 114 阅读 · 0 评论 -
java数据结构之顺序二叉树和堆
1. 顺序存储二叉树底层存储数据的时候使用数组存储,顺序二叉树性质:1. 顺序二叉树通常只考虑完全二叉树;2. 第n个元素的左子节点为 2*n +1 ;3. 第n个元素的右子节点为:2*n +2;4. 第n个元素的父节点为 (n-1)/2;5. n 表示二叉树中的第几个元素(按0开始编号).代码:public class ArrBinaryTree { p...原创 2019-10-23 10:23:03 · 172 阅读 · 0 评论 -
java数据结构之插值查找和斐波那契查找
插值查找:二分查找在确定中间值的位置的时候,使用的公式为: mid = (right + left) / 2 此公式可以转换为:mid = left + (right - left) / 2 上面的公式中 1/2 我们可以进行优化: 设要查找的值为 targetVal (targetVal - a[left]) / (a[right] - a[left]...原创 2019-10-23 10:16:28 · 201 阅读 · 0 评论 -
java数据结构与算法之二分查找
二分查找思想: 待查找数组按照一定顺序已经排好序,取数组中间位置的值,如果其值与待查找的值相等,则直接找到;如果其值大于待查找的值,待查找的值一定在初始位置与中间位置内,只需要在初始位置与中间位置内继续进行二分查找即可;如果其值小于待查找的值,则待查找的值一定在中间位置与结束位置内,只需要在中间位置与结束位置内进行二分查找即可;如果直到起始位置大于结束位置都还没有找到,则可以认为待...原创 2019-10-21 10:00:53 · 114 阅读 · 0 评论 -
java数据结构与算法之基数排序
基数排序思想: 将所有待比较数值统一为同样待数位长度,数位长度较短短数值前面加0, 然后从个位开始,依次将数放入个位数上对应的桶,放完数据后,又从桶中拿出数据。接着是十位数,分别求出每一个待排序数的十位,将此数放入十位对应的桶内,放完所有数后,又依次从桶中拿出数据。。。直至完成最大位数。桶排序需要预先分配10倍的原数组大小,并且其对小数、负数支持不好。代码:publ...原创 2019-10-18 23:18:47 · 112 阅读 · 0 评论 -
java数据结构之插入排序、希尔排序、快速排序、归并排序
1. 插入排序: 先用tmp=a[j+1]保存待插入的数,在还没有找到插入点时,直接用a[j+1] = a[j],免去每一次都交换;再插入数据后就可以跳出内部循环了。代码:public class InsertSort { public static void main(String[] args) { int len = 8000; ...原创 2019-10-18 17:58:14 · 149 阅读 · 0 评论 -
java数据结构之冒泡排序及其优化
冒泡排序:外层的循环用于控制进行多少次比较,内层循环用于比较,这里注意内层循环在打到上一次交换的点后,就可以不进行了。同时,如果发现内层循环没有发生交换,则说明排序已经完成,不用再进行下去了没有优化时:数组长度为:8000, 一共进行了31996000次加了优化之后:数组长度为:8000, 一共进行了31990005次代码:package cn.agan.myso...原创 2019-10-18 09:51:19 · 86 阅读 · 0 评论 -
java数据结构之n皇后问题
n皇后问题:每一行只能有一个皇后,每一列也只能有一个皇后,这个可以用col[edg] 数组来表示某一列是否已经有皇后;对角线 / 有如下性质:对于这种方向上经过同一条线的方格,其横(i) 纵(j)坐标的和都相等 i+j, 一共有2*n-1条这种对角线;对角线\有如下性质:对于这种方向上经过同一条对角线的方格, 其横(i) 纵(j)坐标有如下关系:i - j + n - 1都相等, 一...原创 2019-10-17 16:22:58 · 173 阅读 · 0 评论 -
java数据结构与算法之走迷宫
深度优先实现了一个走迷宫程序运行:原始迷宫:1 1 1 1 1 1 1 1 0 0 0 0 0 1 1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 0 0 0 0 0 ...原创 2019-10-17 10:34:16 · 527 阅读 · 0 评论 -
Java栈实现逆波兰计算器
栈实现了一个逆波兰计算器,包含中序表达式到后缀表达式转换。运行结果:原始表达式:(3+4) * 5 - 16后缀表达式:[3, 4, +, 5, *, 16, -]算出来的结果为:19代码:package cn.agan.mystack;import java.awt.*;import java.util.ArrayList;import java.util....原创 2019-10-17 10:28:53 · 141 阅读 · 0 评论 -
java数据结构之栈实现表达式求值
用栈实现了一个求简单表达式值的算法。算法最后是一个同优先级的表达式,需要先入先出,这违背了栈先入后出的性质。最终使用递归解决这个问题,先把一个操作数和一个操作法pop出来,然后递归的pop,直到操作法栈为空,递归结束。package cn.agan.mystack;import java.util.Scanner;/** * 表达式计算: * 用栈来计算一个表达式的...原创 2019-10-16 16:51:41 · 577 阅读 · 0 评论 -
java数据结构与算法之循环单链表
循环单链表解决约瑟夫问题package cn.agan.link;/** * 约瑟夫问题: * 据说著名犹太历史学家 Josephus有过以下的故事:在罗马人占领乔塔帕特后,39 个犹太人与Josephus及他的朋友躲到一个洞中, * 39个犹太人决定宁愿死也不要被敌人抓到,于是决定了一个自杀方式,41个人排成一个圆圈,由第1个人开始报数,每报数到第3人该人就必须自杀, * 然后...原创 2019-10-16 11:38:11 · 116 阅读 · 0 评论 -
java数据结构之稀疏数组
Java实现的稀疏数组package cn.agan.SparseArray;import javax.lang.model.element.NestingKind;import java.io.*;import java.util.logging.FileHandler;/** * 稀疏数组 * 原理:如果一个二维数组中,有效值占少数,0值占大多数,可以使用稀疏数组来减少内...原创 2019-10-15 18:05:08 · 90 阅读 · 0 评论 -
java数据结构之环形队列
底层数组实现了一个环形队列package cn.agan.queue;import java.util.Scanner;/** * 使用数组模拟队列 */public class CircularQueueDemo { public static void main(String[] args) { //创建一个队列 Circula...原创 2019-10-15 18:04:03 · 129 阅读 · 0 评论