E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
【JAVA数据结构】
Java数据结构
与算法初级篇之数组、集合和散列表
Java数据结构
与算法初级篇之数组、集合和散列表>数据是基础,算法是灵魂本文出自门心叼龙的博客,属于原创类容,转载请注明出处。
门心叼龙
·
2020-08-24 20:45
Java数据结构
--图
如上所示,是一个图结构。图结构主要包含两个部分,点和线。其中线可以根据是否有方向分为两种,图中的线如果有方向可以成为有向图,如果没有可以看成无向图,无向图可以看成特殊的双向有向图。线还有可能包含权重(或者称为距离)这个属性。如何用代码的方式表达图呢,万事万物皆对象,如下所示://表示边publicclassEdge{publicintweight;//权重或者距离publicNodefrom;//
果子狸的大果果
·
2020-08-24 19:21
Java数据结构
的知识体系
Java数据结构
的知识体系主要包括线性表,树,图,数组,集合,矩阵,排序,查询,哈希表,并将java的设计思想,方法及一些常用的算法,设计模式贯穿其中。
番薯(Koali)
·
2020-08-24 18:23
算法
尚硅谷
Java数据结构
学习记录37-迪杰斯特拉算法
!!!!又称银行家算法,超经典超难的!!!!迪杰斯特拉是找一个结点到其它所有结点的最短路径用文字描述有点难一开始目标结点只能到达临近的点此时选择路径最小的点更新目标点到其它点的距离(因为可以经过最小的点到达其它点)在新的距离中继续找最小点packageAlgorithm;importjava.util.Arrays;publicclassDijkstra{publicstaticvoidmain(
哈特谢普苏特
·
2020-08-24 15:07
数据结构JAVA
【Java 数据结构与算法 04】递归
本文为学习
Java数据结构
与算法所记录,主要内容为递归的原理和应用,以及通过递归解决迷宫问题、八皇后问题(回溯算法)Github仓库:DataStructures-and-Algorithms个人网站:
源志bx
·
2020-08-24 15:14
Java
数据结构与算法
数据结构
算法
递归法
(
Java数据结构
和算法)最短路径---Dijkstra+Floyd
参考博文Floyd算法和Dijkstra算法都不能针对带有负权边的图,否则一直走负权边,没有最小,只有更小!!Floyd算法importjava.util.Scanner;//Floyd算法classGraph{publicint[][]adjacencyMatrix;publicintvertexNumber;publicintarcNumber;publicstaticfinalintINF=
ccnuacmhdu
·
2020-08-24 13:15
Java版数据结构
Java数据结构
:链表
1.概述链表是一种数据结构,在内存中通过节点记录内存地址而相互链接形成一条链的储存方式。链表的插入和删除都比较快,缺点是查找比较慢。除非需要频繁的通过下标来随机访问数据,否则在很多使用数组的地方都可以用链表代替。相比数组而言,链表在内存中不需要连续的区域,只需要每一个节点都能够记录下一个节点的内存地址,通过引用进行查找,因此链表增删操作时间消耗很小,而查找遍历时间消耗很大。2.链表的分类链表常用的
鹭岛猥琐男
·
2020-08-24 12:50
Java数据结构与算法
Java数据结构
和算法(七)——链表
前面博客我们在讲解数组中,知道数组作为数据存储结构有一定的缺陷。在无序数组中,搜索性能差,在有序数组中,插入效率又很低,而且这两种数组的删除效率都很低,并且数组在创建后,其大小是固定了,设置的过大会造成内存的浪费,过小又不能满足数据量的存储。本篇博客我们将讲解一种新型的数据结构——链表。我们知道数组是一种通用的数据结构,能用来实现栈、队列等很多数据结构。而链表也是一种使用广泛的通用数据结构,它也可
IT可乐
·
2020-08-24 11:11
Java数据结构
——04 双向链表的增删改
双向链表的增删改双链表同单链表相比多了前驱节点,相比单链表插入删除更容易,可以随时调用当前节点的前节点,但同时增加了前驱节点,增删两项与单链表有点区别,修改遍历原来的单链表方法一样适用。增加方法过程如下:删除方法:实现如下:classDoubleNode{//id和name是data域privateintid;privateStringname;publicDoubleNode(intid,Str
GM.
·
2020-08-24 11:08
数据结构
java数据结构
之单链表类的设计与顺序插入和就地排序算法
首先创建节点类Node.单链表是由节点构成,节点类包含两个成员属性,一个是数据元素,一个是下一个节点的对象引用。classNode{privateObjectelement;//数据元素privateNodenext;//下一个节点的对象引用Node(Nodenext)//头节点构造函数{this.element=null;this.next=next;}Node(Objectelement,No
夜舞虫鸣
·
2020-08-24 09:25
数据结构
Java数据结构
-- 顺序表和链表的简单总结
1.顺序表顺序表是用一段物理地址连续的存储单元依次存储数据元素的线性结构,一般情况下采用数组存储.在数组上完成数据的增删查改.顺序表可分为:静态顺序表:使用定长数组存储动态顺序表:使用动态开辟的数组存储2.链表链表是一种物理存储结构上非连续存储结构,数据元素的逻辑顺序是通过链表中的引用链接次序实现的3.顺序表和链表的区别顺序表优点:空间连续,支持随机访问缺点:1.中间或前面插入删除的时间复杂度是O
小朋友/?
·
2020-08-24 07:50
Java数据结构
--
链表
ArrayList源码浅析
文章目录前言一.ArrayList介绍二.ArrayList的部分源码学习1.初始化2.add方法(1).add(Ee)(2).Arrays.copyOf前言ArrayList是我们常用到的一个重要的
java
rockyou666
·
2020-08-24 07:06
Java学习
ArrayList
Java源码学习
java数据结构
及框架
慕课视频(java入门资料):https://www.imooc.com/learn/110、菜鸟教程一.
java数据结构
:枚举(Enumeration)、位集合(BitSet)、向量(Vector)、
亮涛
·
2020-08-24 06:33
【
Java数据结构
】Hashmap与Hashtable源码阅读笔记
引言:这几天在捣鼓Hashmap跟Hashtable的区别,其中关注的b比较多的就是Hashmap和Hashtable计算在Entry[]数组中index的方法到底有什么区别。Hashmap跟Hashtable的实现原理比较类似,借用一张其他地方偷来的图。外拉链式的Hash表可以看到,都是采用外拉链的方式来实现元素存储,底层是数组+链表实现,原理都不说了,学过数据结构中hash冲突解决的同学应该都
莫绪旻_向屿
·
2020-08-24 05:44
java数据结构
:线性表之数组实现
导语数据结构中最简单的结构就是线性结构。线性结构又分为多种类型:顺序线性表、链式线性表、栈、队列、堆等等今天我们来复习一下如何使用数组来实现线性表设计抽象数据类型ADT数据结构实际上就是针对一系列数据,设计一系列针对这些数据的操作方法,由于这些数据和操作方法一般来说是共性的特征,所以我们可以使用接口来进行抽象。接口代码如下所示:packagecom.zhanwj.datastructure;pub
wenger
·
2020-08-23 21:28
java数据结构
[
Java数据结构
]线性表之栈Stack
》》先进后出》》代码package栈和队列;classstackArr{privateintmaxSize;privatelong[]stackArr;privateinttop;publicstackArr(ints){maxSize=s;stackArr=newlong[maxSize];top=-1;}publicvoidpush(longj){//压栈stackArr[++top]//先t
帕尼尼270
·
2020-08-23 18:22
数据结构
java数据结构
和算法——双向链表(Double Linked List)的修改、删除、查询及按编号顺序添加节点到双向链表的应用示例
一、双向链表(DoubleLinkedList)的修改、删除、查询及按编号顺序添加节点到双向链表的代码示例1、定义一个人员节点类,每一个PersonNode对象就是一个节点packagecom.rf.springboot01.dataStructure.doubleLinkedList2;/***@description:定义一个人员节点类,每一个PersonNode对象就是一个节点*@autho
小志的博客
·
2020-08-23 10:48
java数据结构和算法
最大公约数和最小公倍数 in Java
最近在学校当助教,课程是
Java数据结构
,因此重温一下算法和数据结构,也因此把算法和一些Java的特性学习的更深刻,也希望用写博客来监督自己的持续学习。
hc_xyz
·
2020-08-23 01:52
数据结构
分布式架构下基于Redisson实现Redis分布式锁
Redisson:实现了分布式和可扩展的
Java数据结构
。Lettuce:高级Redis客户端,用于线程安
riemann_
·
2020-08-22 18:38
Java架构设计与分布式
Redis
Java数据结构
与算法 深搜(DFS)的简单使用(一)之排列组合
今天,我们来简单介绍一下深度优先搜索(DFS)的概念和使用。在百度词条中,对深搜的解释是这样的。百度词条中的解释由此,我们可知,深搜是广泛运用到图中的搜索方法之一。用深度优先搜索遍历图的基本思路是:(1)访问顶点v;(2)依次从v的未被访问的邻接点出发,对图进行深度优先遍历;直至图中和v有路径相通的顶点都被访问;(3)若此时图中尚有顶点未被访问,则从一个未被访问的顶点出发,重新进行深度优先遍历,直
薛定谔的猫狗
·
2020-08-22 15:40
阿里数据结构与算法技术文档,解析经典问题
整理了一份
Java数据结构
与算法经典问题解析核心知识点。
Java浮世绘
·
2020-08-22 15:45
Java
从0开始学习数据结构与算法(Java版)
从0开始学习数据结构与算法Java版GitHub地址DataStructure_
Java数据结构
稀疏数组GitHub地址DataStructure_JavaJava版的数据结构使用Java语言实现常用的数据结构
苏朗轩
·
2020-08-22 13:25
数据结构与算法
算法
数据结构与算法!
Java数据结构
与算法——链表
前言:
Java数据结构
与算法专题会不定时更新,欢迎各位读者监督。本文介绍另一种数据结构——链表,包括链表的特点特点、链表的创建、删除、插入和输出,文末给出java代码和一道常见的关于链表的面试题。
好记性不如烂本子
·
2020-08-22 10:03
面试
链表删除结点
链表
数据结构与算法
java
Java数据结构
与算法——桶排序
前言:
Java数据结构
与算法专题会不定时更新,欢迎各位读者监督。本文从最简单的一个排序算法——桶排序开始,分析桶排序的实现思路,代码实现,性能特点以及适用场景。
好记性不如烂本子
·
2020-08-22 10:55
java
排序
桶排序
leetcode刷题(64)——背包类动态规划问题
背包问题详细分析问题拆解:定义状态:推导状态转移方程:寻找边界条件:三、案例一:leetcode——416.分割等和子集题目描述:分析:四、案例二:leetcode——322.零钱兑换题目描述:分析:动态规划知识参考:
Java
TheManba
·
2020-08-22 04:21
leetcode刷题
Java将Vector对象序列化
Java将Vector对象序列化Vector对象是一个很灵活的
java数据结构
,在实际编程中,有时需要我们将一个Vector对象传递给另一个Java程序并保持Vector的数据结构状态,这时,我们可以将需要传递的对象实现
betheone
·
2020-08-22 01:49
java
读书笔记-算法与数据结构(第二版java)
进行了一次笔试,深切的感受到了自己在数据结构方面的知识的零散,因此专门找一本书来系统的整理学习一下,最后发现
Java数据结构
和算法这本书系统性比较强,而且内容浅显易懂,因此通过这本书作为载体来进行学习,
培鹏
·
2020-08-22 00:45
算法与数据结构
Java数据结构
与算法解析(八)——伸展树
伸展树简介伸展树(SplayTree)是特殊的二叉查找树。它的特殊是指,它除了本身是棵二叉查找树之外,它还具备一个特点:当某个节点被访问时,伸展树会通过旋转使该节点成为树根。这样做的好处是,下次要访问该节点时,能够迅速的访问到该节点。特性1.和普通的二叉查找树相比,具有任何情况下、任何操作的平摊O(log2n)的复杂度,时间性能上更好2.和一般的平衡二叉树比如红黑树、AVL树相比,维护更少的节点额
伯努力不努力
·
2020-08-21 21:11
数据结构与算法
JAVA数据结构
之实现简易ArrayList,LinkedList,HashTable
ArrayList,LinkedList,HashTable三者是JAVA中的三种常见的数据结构,当然它们的性能有不同的差异,比如数据查找速度,增加或删除数据的速度,内存空间占用等等,这将在下篇博客中体现,这篇博客只是大致应用数据结构知识来自己实现三种数据结构的基本功能,包含一些简单的增查改删功能。ArrayList:publicclassArrayList{privateintcounts;//
domphy
·
2020-08-21 19:23
JAVA
深入理解Stack 栈
Java集合深入理解(5):Stack栈标签:
java数据结构
集合框架数据结构中的栈数据结构中,栈是一种线性数据结构,遵从LIFO(后进先出)的操作顺序,所有操作都是在顶部进行有点像羽毛球筒:栈通常有三种操作
yesIcando-bupt
·
2020-08-21 15:32
java
Java实现--奇偶排序
《
Java数据结构
和算法》中写道:奇偶排序实际上在多处理器环境中很有用,处理器可以分别同时处理每一个奇数对,然后又同时处理偶数对。因为奇数对是彼此独立的,每一刻都可以用不同的处理器比较和交换。
CrAcKeR-1
·
2020-08-21 10:52
数据结构和算法
Java
java数据结构
----图的基本操作
java数据结构
----图的基本操作实验四、图的基本操作一、实验目的1、熟练掌握图的邻接矩阵和邻接表存储结构;2、掌握图的创建方法;3、掌握求顶点度的方法;4、掌握图的深度优先和广度优先遍历方法;二、实验内容
slicer
·
2020-08-20 23:59
语言/理论
数据结构
实验
Java数据结构
之哈夫曼树
背景由于目前常用的图像、音频等多媒体的信息量巨大,因此必须采用数据压缩技术来存储和传输。数据压缩技术通过对数据进行重新编码来压缩存储,以便减少数据占用的存储空间,在使用时再进行解压缩,恢复数据的原有特性。压缩方法主要由有损压缩和无损压缩。有损压缩是指压缩过程中可能会丢失数据信息;无损压缩是指压缩存储数据的全部信息,保证解压后的数据不丢失。哈夫曼编码是一种无损压缩技术。基本概念结点间路径:从一个结点
Monkey_Joker
·
2020-08-20 20:06
Java数据结构
JAVA数据结构
与算法实现-哈夫曼树
JAVA数据结构
与算法实现-哈夫曼树哈夫曼树,是一种特殊的二叉树,由一个叫做哈夫曼的人实现出来的,由于他的一致性所以数据统一。在这里我使用数组实现二叉树的原理。
烈火小绵阳
·
2020-08-20 19:42
Java数据结构
与算法之stack栈
目录:1.栈概述2.数组实现自定义栈3.链表实现自定义栈4.集合实现自定义栈1.栈概述栈和队列一样,也是线性表的一种,它唯一的特点是需要满足先进后出(FILO)的规则,也就是只能对栈的一头进行操作,添加数据称为压栈,移除数据称为弹栈。而在java中栈的实现可以通过数组,链表,集合(ArrayList/LinkedList)3种方式进行实现。2.数组实现自定义栈(1)自定义栈接口CustomStac
小巷下起了雨
·
2020-08-20 17:30
JAVA
Java数据结构
--图
0、图某班级的学生信息表如下图所示,每个学生都来自不同的城市,如果老师从重庆出差到南京,顺路要选择部分学生做一次家访,怎么样选择才最合理呢?下图是一个简单的模拟城市路线的地图,从重庆出差到南京,如何选择用时最短的路线出差,同时做家访呢?注:数字代表往返两城市间所需要的时间(单位:小时)。要解决该问题,最好的方法是使用数据结构中图的知识。一、图的概念及基本术语图:图G是由两个集合V和E所限定的一种数
书香水墨
·
2020-08-20 17:29
Java
Java数据结构
与算法
一、基本数据结构
Java数据结构
–顺序表
Java数据结构
–单链表
Java数据结构
–循环链表
Java数据结构
–双链表
Java数据结构
–顺序栈
Java数据结构
–链栈
Java数据结构
–递归
Java数据结构
–顺序队列
书香水墨
·
2020-08-20 17:29
Java
java数据结构
-利用Heap(堆)实现PriorityQueue(优先队列)
(一)、首先介绍下优先队列的性质(选自JDKAPI)优先队列是一个基于优先级堆的无界优先级队列。优先级队列的元素按照其自然顺序进行排序,或者根据构造队列时提供的Comparator进行排序,具体取决于所使用的构造方法。优先级队列不允许使用null元素。依靠自然顺序的优先级队列还不允许插入不可比较的对象(这样做可能导致ClassCastException)。此队列的头是按指定排序方式确定的最小元素。
iteye_16768
·
2020-08-20 16:59
学习总结
java数据结构
之MaxHeap
MaxHeap:一个完全二叉树,父节点比子节点大,可用数组表示设父节点为i,则左子节点为2*i,右子节点为2*i+1publicinterfaceMyMaxHeapInterf>{publicvoidadd(TEntry);publicvoidclear();publicTremoveMax();publicTgetMax();publicbooleanisEmpty();publicintget
嵇康
·
2020-08-20 15:39
java
哈夫曼编码对字符串的压缩与解压缩(Java)
最近学习韩顺平老师主讲的“图解
java数据结构
与算法”的哈夫曼编码这一章节时,在编码实现上遇到了些许问题,本文主要记述一下问题及自己的解决方案,如有更优解还请指点。
Mzh1996
·
2020-08-20 15:47
数据结构与算法
java
Stack Queue Deque
Java数据结构
:各数据结构复杂度:StackFirstInLastOutFILO删除的复杂度为什么是O(1)而不是O(n)?,数据结构不是链表么?
阿杰、
·
2020-08-20 14:43
数据
Java数据结构
----图--最短路径解法Dijkstra算法和Floyd算法
最短路径—Dijkstra算法和Floyd算法1、Dijkstra算法1.1、定义概览Dijkstra(迪杰斯特拉)算法是典型的单源最短路径算法,用于计算一个节点到其他所有节点的最短路径。主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止。Dijkstra算法是很有代表性的最短路径算法,在很多专业课程中都作为基本内容有详细的介绍,如数据结构,图论,运筹学等等。注意该算法要求图中不存在负权边。
liucw_cn
·
2020-08-20 12:10
Java数据结构
java数据结构
之串的定义
源码的github地址,可以下载到本地运行串的接口定义packageInterface;importimpl.ArrayString;/***串是由零个或者多个字符组成的有限序列*串中字符的数目n称为串的长度零个字符的串称为空串它的长度为零*串中任意个连续字符字符组成的子序列称为该串的子串包含子串的串相应的称为主串*通常称字符在序列中的序号为该字符在串中的位置子串的位置则是以该子串的第一个字符在主
程序员与王子喵
·
2020-08-20 11:03
数据结构与算法
常见数据结构的java实现
Java数据结构
-1 ArrayList顺序表实现
1.ArrayList子类 ArrayList是JavaCollection接口下List子接口的实现子类。它是一个长度可变的数组,底层是以数组为基础的顺序表实现的。所以说研究Java顺序表数据结构必须得了解一下ArrayList类。//ArrayList定义publicclassArrayListextendsAbstractListimplementsList,RandomAccess,Cl
Xucc_
·
2020-08-20 02:47
Java数据结构
Java数据结构
与算法之数组排序——奇偶排序
直接看代码/***排序数组,用于对数组中的元素进行排序*采用奇偶排序*//**思路:*它的思路是在数组中重复两趟扫描。*第一趟扫描选择所有的数据项对,a[j]和a[j+1],j是奇数(j=1,3,5,……)。*如果它们的关键字的值次序颠倒,就交换它们。*第二趟扫描对所有的偶数数据项进行同样的操作(j=2,4,6,……)。*重复进行这样两趟的排序直到数组全部有序**//*详解:*所谓奇偶排序,其核心
BatmanWayne
·
2020-08-19 23:26
JAVA数据结构
数据结构包括:线性结构(一一对应)和非线性结构线性结构(顺序存储和链式存储):数组、队列、链表、栈非线性结构:二维数组,多维数组,广义表,树结构,图结构稀疏数组第一行代表原二维数组一共有几行几列有几个非零的数,从而缩小规模普通队列的数组实现队列构造:队首front(-1)(指向队首元素前一个),队尾rear(-1)(指向队尾元素),MAXSIZE,队列数组arr。判断空front==rear判断满
那时朱丽叶十四岁
·
2020-08-19 19:56
学习
JAVA数据结构
与算法(六)java实现图
JAVA数据结构
与算法(六)java实现图图的定义图是由顶点的有穷非空集合和顶点之间边的集合组成,通过表示为G(V,E),其中,G标示一个图,V是图G中顶点的集合,E是图G中边的集合。
Tong_Nan
·
2020-08-19 08:39
数据结构与算法
java数据结构
之图
图是一种很复杂的数据结构,为了描述图创造了邻接矩阵的方式来描述它,图和树不一样,构建图,首先必须要有节点,然而树的根节点可以为空,构建图需要先将图描述起来1.图的节点个数2.图的节点矩阵3.图的邻接矩阵构建一个图/**1.图的构成(顶点数量,顶点数组,顶点的邻接矩阵)*2.图的遍历*深度优先遍历和广度优先遍历*深度优先算法:类似于树的前序遍历,一个布尔型数组存储是否已经遍历过,然后根据第一个节点不
Joy_Dang
·
2020-08-19 08:58
java
Java数据结构
之栈与计算器
栈的一个实际需求请输入一个表达式计算式:[722-5+1-5+3-3]点击计算【如下图】请问:计算机底层是如何运算得到结果的?注意不是简单的把算式列出运算,因为我们看这个算式7*2*2-5,但是计算机怎么理解这个算式的(对计算机而言,它接收到的就是一个字符串),我们讨论的是这个问题->栈。栈的介绍栈的英文为(stack)栈是一个先入后出(FILO-FirstInLastOut)的有序列表。栈(st
这个名字真难起
·
2020-08-19 05:41
数据结构
数据结构
从1开始学
Java数据结构
与算法——栈的实现与应用
从1开始学
Java数据结构
与算法——栈的实现与应用案例引入与应用场景栈的特点用数组实现栈方法分析思路分析代码实现用栈实现综合计算器思路分析:例题图解代码实现存在的问题代码改进用链表实现栈案例引入与应用场景假如有一个需求
Java大魔王
·
2020-08-19 05:17
Java数据结构与算法
上一页
19
20
21
22
23
24
25
26
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他