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数据结构与算法
】冒泡排序
文章目录冒泡排序基本介绍冒泡排序算法的过程代码实现冒泡排序基本介绍冒泡排序(BubbleSorting)的基本思想是:通过对待排序序列从前向后(从下标较小的元素开始),以此比较相邻元素的值,若发现逆序则交换,数值较大的元素逐渐从前移后部,就像水底下的气泡一样逐渐向上冒。因为排序的过程中,各元素不断接近自己的位置,如果一趟比较下来没有进行过交换,就说明序列有序,因此要在排序过程中设置一个标志flag
董梦宇
·
2020-07-28 02:44
数据结构与算法
【
Java数据结构与算法
】插入排序
插入排序基本介绍插入式排序属于内部排序法,式对于要排序的元素以插入的方式寻找该元素的适当位置,以达到排序的目的。插入排序思想:插入排序(InsertionSorting)的基本思想是:把n个待排序的元素看成为一个有序表和一个无序表,开始有序表中只包含一个元素。无序表当主包含n-1个元素。排序过程中每次从无序表中取出第一个元素,把它的排序码以此与有序表元素的排序码进行比较,将他插入到有序表中的适当位
董梦宇
·
2020-07-28 02:44
数据结构与算法
【
Java数据结构与算法
】选择排序
选择排序基本介绍选择式排序也属于内部排序法,是从欲排序的数据种,按指定的规则选出某一元素,再依规定交换位置后达到排序的目的。选择排序思想:选择排序(selectsorting)也是一种简单的排序风法,它的基本思想是:第一次从arr[0]~arr[n-1]种选取最小值,与arr[0]交换,第二次从arr[1]~arr[n-1]中选取最小值,与arr[1]交换,第三次从arr[2]~arr[n-1]中
董梦宇
·
2020-07-28 02:44
数据结构与算法
【
Java数据结构与算法
】归并排序
归并排序文章目录归并排序基本介绍归并排序算法的过程代码实现基本介绍归并排序(MERGE-SORT)是利用归并的思想实现排序方法,该算法采用经典的分治(divide-and-conquer)策略(分治法将问题分(divide)成一些小的问题然后递归求解,而治(conquer)的阶段则将分的阶段得到的各答案“修补”在一起,即分而治之)。归并排序算法的过程说明:其结构非常像一颗完全二叉树,本文的归并排序
董梦宇
·
2020-07-27 12:40
数据结构与算法
算法
数据结构
java
排序算法
【
Java数据结构与算法
】快速排序
快速排序基本介绍快速排序(Quicksort)是对冒泡排序的一种改进。基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按照此方法对这两部分数据分班进行快速排序。整个排序过程可以递归进行,以此达到整个数据变成有序序列。快速排序算法的过程代码实现packagesort;importjava.text.SimpleDateFormat;
董梦宇
·
2020-07-27 12:40
数据结构与算法
Java数据结构与算法
:查找算法
在java中,我们常用的查找有四种:顺序(线性)查找二分查找/折半查找插值查找斐波那契查找1、线性查找线性查找是最简单也是最基本的查找了,其思想就是遍历数组中所有的值来与查找值相比较,找到了就返回。2、二分查找二分查找也称折半查找(BinarySearch),它是一种效率较高的查找方法。但是,折半查找要求线性表必须采用顺序存储结构,而且表中元素按关键字有序排列。基本思路:首先,假设表中元素是按升序
Patarw
·
2020-07-22 08:01
Java数据结构与算法
之交错字符串97(DP)
给定三个字符串s1,s2,s3,验证s3是否是由s1和s2交错组成的。思路分析当我看到这道题的第一想法是用三指针的方法解决:index1指向s1,index2指向s2,index3指向s3。按照顺序判断s3的字符是否与s1、s2的字符一致,即先与s1判断,不一致再与s2判断;若都不一样则输出false。但这个解法在随后的测试中暴露了问题,与s1、s2比较是存在先后顺序的,所以如果s2出现s3的前部
梧桐更兼细雨_到黄昏
·
2020-07-18 23:00
Java数据结构与算法
之DFS
深度优先搜索算法深度优先遍历,从初始访问结点出发,初始访问结点可能有多个邻接结点,深度优先遍历的策略就是首先访问第一个邻接结点,然后再以这个被访问的邻接结点作为初始结点,访问它的第一个邻接结点,可以这样理解:每次都在访问完当前结点后首先访问当前结点的第一个邻接结点。我们可以看到,这样的访问策略是优先往纵向挖掘深入,而不是对一个结点的所有邻接结点进行横向访问。显然,深度优先搜索是一个递归的过程。算法
梧桐更兼细雨_到黄昏
·
2020-07-17 14:00
【
Java数据结构与算法
】 前缀中缀后缀表达式及转换
文章目录前缀表达式(波兰表达式)前缀表达式分析与介绍思路分析中缀表达式中缀表达式分析与介绍后缀表达式(逆波兰表达式)后缀表达式分析与介绍思路分析逆波兰计算器代码实现逆波兰计算器中缀表达式转换为后缀表达式思路分析代码实现前缀表达式(波兰表达式)前缀表达式分析与介绍前缀表达式又称为波兰式,前缀表达式的运算符位于操作数之前举例说明:(3+4)*5-6对应的前缀表达式就是-*+3456前缀表达式的计算机求
董梦宇
·
2020-07-16 02:21
数据结构与算法
【
Java数据结构与算法
】时间复杂度
算法的时间复杂度文章目录算法的时间复杂度时间频度举例说明-忽略常数项举例说明-忽略低次项举例说明-忽略系数时间复杂度常见的时间复杂度常数阶O(1)对数阶O(**log2n**)线性阶O(n)线性对数阶O(n**log2N**)平方阶O(n^2^)立方阶O(n^3^)、k次方阶O(n^k^)平均时间复杂度和最坏时间复杂度空间复杂度基本介绍度量一个程序(算法)执行时间的两种方法事后统计的方法(这种方法
董梦宇
·
2020-07-16 02:21
数据结构与算法
【
Java数据结构与算法
】环形链表及约瑟夫问题
单向环形链表应用场景单向环形链表介绍Josephu(约瑟夫,约瑟夫环)问题Josephu问题为:设编号为1,2,…n的n个人围坐一圈,约定编号为k(1nums){System.out.println("参数输入有误,请重新输入!");return;}//创建一个辅助指针。帮助我们完成小孩出圈Boyhelper=first;//需要创建一个辅助指针helper,事先应该指向环形链表的最后的这个节点。
董梦宇
·
2020-07-16 02:20
数据结构与算法
Java数据结构与算法
(3) 寻找中序遍历时的下一个结点
前言今天一天没有什么状态,学习效率太低了。今天重新温习了一下树的遍历,如何寻找中序遍历的下一个结点。接下来的计划是学习SpringBoot和算法与数据结构。思路算法与数据结构是我最薄弱的一环。每次写关于算法的代码时,都无法下手,经常陷入到逻辑的死胡同里。真心感觉自己的逻辑能力好差,思路混乱。程序员最重要的是思考和逻辑能力,只有把思路理清楚了,代码才能一气呵成。中序遍历:首先按照中序遍历的方式去访问
cmazxiaoma
·
2020-07-15 17:46
最新
Java数据结构与算法
(完整版)
目录:┣━━1、【数据结构与算法】预告.mp4┣━━2、算法基本概念.mp4┣━━3、排序算法-宋词记忆法.mp4┣━━4、选择排序.mp4┣━━5、选择排序_程序编写.mp4┣━━6、选择排序大O分析-视频导出.mp4┣━━7、选择排序结尾.mp4┣━━8、冒泡排序.mp4┣━━9、插入排序.mp4┣━━10、总结简单排序-选择、插入、冒泡.wmv┣━━11、希尔排序.mp4┣━━12、归并排序
weixin_46238128
·
2020-07-15 16:22
Java数据结构与算法
(排序)——基数排序(LSD)
一、基本思想最低位优先法,LSD(Leastsignificantdigital)——先从最低位开始排序,再对次低位排序,直到对最高位排序后得到一个有序序列(位数不同时高位补0)。二、举例分析假设有一串数列:73,22,93,43,55,14,28,65,39,81。排序过程如下:(1)先根据个位进行排序,得到:0——1——812——223——73,93,434——145——55,656——7——
TheManba
·
2020-07-15 16:43
Java数据结构与算法
【
Java数据结构与算法
】栈及经典应用
文章目录栈的应用场景与介绍栈的介绍出入栈的概念(如图所示)栈的应用场景数组模拟栈的思路分析图代码实现栈实现综合计算器要求思路分析代码实现栈的应用场景与介绍计算式:7*2*2-5+1-5*3-3=?计算机底层是如何运算得到结果的?注意不是简单的把算是列出运算,因为我们看这个算式7*2*2-5,但是计算机怎么理解这个算式的(对计算机而言,它接收到的就是一个字符串),我们讨论的是这个问题。–>栈栈的介绍
董梦宇
·
2020-07-15 14:09
数据结构与算法
【
Java数据结构与算法
】基数排序(桶排序)
基数排序(桶排序)基本介绍基数排序(radixsort)属于“分配式排序”(distributionsort),又称“桶子法”(bucketsort)或binsort,顾名思义,它是通过键值的各个位的值,将要排序的元素分配至某些“桶”中,达到排序的作用。基数排序法是属于稳定性的排序,基数排序法是效率最高的稳定性排序法基数排序(RadixSort)是桶排序的扩展基数排序是1887年赫尔曼·何乐礼发明
董梦宇
·
2020-07-15 13:51
数据结构与算法
算法
数据结构
java
排序算法
Java数据结构与算法
初级篇之数组、集合和散列表
blog.csdn.net/geduo_83/article/details/86385566源码下载地址:https://download.csdn.net/download/geduo_83/10913510初级篇:
Java
门心叼龙
·
2020-07-14 10:02
数据结构
Java数据结构与算法
之数据结构-逻辑结构-集合(一)------集合类简析
本讲内容:集合collection讲集合collection之前,我们先分清三个概念:colection集合,用来表示任何一种数据结构Collection集合接口,指的是java.util.Collection接口,是Set、List和Queue接口的超类接口Collections集合工具类,指的是java.util.Collections类。SCJP考试要求了解的接口有:Collection,S
以墨言智
·
2020-07-13 21:44
Java数据结构与算法
从1开始学
Java数据结构与算法
——八种排序算法讲解分析与代码实现
从1开始学
Java数据结构与算法
——八种排序算法讲解分析与代码实现算法的执行时间时间频度及其特点时间复杂度8种算法简介冒泡排序思路分析代码实现算法优化选择排序思路分析代码实现插入排序思路分析代码实现存在的问题希尔排序思路分析代码实现快速排序思路分析代码实现归并排序思路分析代码实现基数排序思路分析代码实现基数排序的空间问题堆排序写在最后算法的执行时间要了解算法
Java大魔王
·
2020-07-12 13:58
Java数据结构与算法
Java数据结构与算法
解析(三)——队列与背包
关联文章:
Java数据结构与算法
解析(一)——表
Java数据结构与算法
解析(二)——栈队列基本概念像栈一样,队列也是表。然而,使用队列时插入在一端进行,而删除则在另一端进行。
伯努力不努力
·
2020-07-12 02:25
数据结构与算法
Java数据结构与算法
解析(二)——栈
关联文章:
Java数据结构与算法
解析(一)——表栈是限制插入和删除只能在一个位置上进行的表,该位置是表的末端,叫做栈顶。
伯努力不努力
·
2020-07-12 02:25
数据结构与算法
Java数据结构与算法
——归并排序(图解)(算法效率测试)
归并排序说明:归并排序是利用归并的思想实现的排序方法,该算法采用经典的分治策略,分治法将问题分成一些小的问题然后递归求解,而治的阶段则将分的阶段得到的各答案"修补”在一起,即分而治之。下面展示图解过程:归并排序思想示意图2—合并相邻有序子序列再来看看治阶段,我们需要将两个已经有序的子序列合并成--个有序序列,比如上图中的最后一次合并,要将[4,5,7,8]和[1,2,3,6]两个已经有序的子序列,
为月提笔_
·
2020-07-10 23:22
Java数据结构与算法
(四)-链表
链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成。每个结点包括两个部分:一个是存储数据元素的数据域,另一个是存储下一个结点地址的指针域。相比于线性表顺序结构,操作复杂。由于不必须按顺序存储,链表在插入的时候可以达到O(1)的复杂度,比另一种线性表顺序表快得多,但是查找一个
FantJ
·
2020-07-09 22:46
Java数据结构与算法
12——Hash表
1.Hash表是什么Hash表(也称散列表)是一种能实现快速插入和查找操作的数据结构,采用根据关键码值(key)来获取对应Value的方式。把关键码值映射到Value的位置的函数称为Hash函数,而存放记录的数组就是Hash表。Ant127^2+1527+18Apple127^4+1627^3+1627^2+1327+5200034%10000=34.5位zzzzz=1302.Hash表的优缺点1
王侦
·
2020-07-09 12:29
java数据结构与算法
——栈与队列
本节目标:1.掌握栈的原理与应用2.掌握队列的原理与应用栈和队列都属于线性表栈栈又称为堆栈,是一种运算受限的线性表,这是因为它仅允许在线性表的固定一端(表尾)进行插入、删除和读取元素等运算,不允许在其他任何位置进行运算。相关名词:栈顶、栈顶元素、栈底、进栈(压栈)、出栈(退栈)特点:后进先出时间复杂度:O(1)顺序存储结构需要一个数组和整型变量,利用数组来存储元素,利用整型变量存储栈顶元素的下标,
Devin01213
·
2020-07-09 03:36
数据结构与算法
Java数据结构与算法
(排序)——冒泡排序
一、基本思想冒泡排序是一种交换排序。通过两两比较相邻记录的关键字,如果反序则交换,直到没有反序的记录为止。二、举例分析冒泡排序的处理过程为:对序列的相邻两个关键字array[j]和array[j+1],若逆序(array[j]>array[j+1]),则交换,使得关键字值小的记录左移,关键字值大的记录右移。第一趟冒泡排序会找出序列中关键字值最大的记录,第二趟排序会找出关键字值第二大的记录,……则对
TheManba
·
2020-07-08 23:27
Java数据结构与算法
JAVA数据结构与算法
的学习——折半查找和插值插值
折半查找又称二分查找,前提是线性表中的记录必须是关键码有序(通常从小到大有序)思路图解:实现代码:publicclassTest{staticintBinary_search(int[]a,intkey){intlow;//定义最低位下标inthigh;//定义最高位下标intmid;//中间位low=0;high=a.length-1;intcount=0;while(lowa[mid]){lo
buchicaodetuzi
·
2020-07-08 20:01
数据结构与算法
Java数据结构与算法
(韩顺平老师)自学笔记
Java数据结构与算法
数据类型1数据类型介绍2数据类型之——稀疏数组2.1引入实例2.2稀疏数组的基本介绍2.3应用实例2.4思路分析3单向队列3.1队列介绍3.2数组模拟队列3.3思路分析3.4代码实现
三驴蛋蛋
·
2020-07-08 18:42
Java 数据结构与算法系列之冒泡排序
带着这个好奇心,我去查了下资料,国内基本找不到使用Java写的数据结构与算法书籍,有一本书叫《
Java数据结构与算法
》,这本书的代码是使用Java实现的,不过这本书是国内的学者翻译国外的书籍写出来的,个人感觉这
weixin_34409741
·
2020-07-08 18:07
Java数据结构与算法
(一、初识数据结构与算法)
1.经典的算法面试题介绍经典的面试题解决的算法字符串匹配(KMP算法)汉罗塔游戏(分治算法)八皇后问题(回溯算法)马踏棋盘(图的深度优化+贪心算法)其他常见问题:1.五子棋存档问题 => 稀疏数组【数据结构】2.约瑟夫问题 => 单向环形链表【数据结构】3.修路问题 => 最小生成树(加权值)【数据结构】+普利姆算法4.最短路径问题 => 图【数据结构】+费罗伊德算法5.汉罗塔
Sichon
·
2020-07-08 03:15
Java 数据结构与算法 (尚硅谷
Java数据结构与算法
)笔记目录
红色的表示重要,绿色的表示暂时还不懂而且很重要线性结构和非线性结构队列顺序队列循环队列链表链表(LinkedList)介绍链表是有序的列表,但是它在内存中是存储如下小结:1)链表是以节点的方式来存储,是链式存储2)每个节点包含data域,next域:指向下一个节点.3)如图:发现链表的各个节点不一定是连续存储.4)链表分带头节点的链表和没有头节点的链表,根据实际的需求来确定单向链表双向链表Jose
小白鼠丶
·
2020-07-07 21:01
数据结构与算法
Java数据结构与算法
day02 链表
文章目录第三章链表单链表介绍和内存布局单链表创建和遍历的分析实现添加(创建)过程遍历过程代码实现单链表按顺序插入节点单链表节点的修改单链表节点的删除和小结单链表面试题新浪面试题腾讯面试题百度面试题课后练习双向链表增删改查分析图解及实现环形链表介绍和约瑟夫问题约瑟夫问题分析图解和实现本章导图总结第三章链表本章源码:https://github.com/name365/Java-Data-struct
subeiLY
·
2020-07-07 16:33
数据结构与算法(Java版)
Java数据结构与算法
_冒泡排序
Java数据结构与算法
_冒泡排序一、冒泡排序介绍冒泡排序也称起泡排序,它是通过元素两两比较,如果前者比后者大,则交换位置,这样一趟排序下来,最大的元素就排到队尾了;反复此操作,直至数列有序完成排序操作。
shuPush
·
2020-07-07 08:03
数据结构与算法
Java数据结构与算法
——冒泡排序 (数据测试 验证算法时间)
冒泡排序基本介绍:冒泡排序(BubbleSorting)的基本思想是:通过对待排序序列从前向后(从下标较小的元素开始),依次比较相邻元素的值,若发现逆序则交换,使值较大的元素逐渐从前移向后部,就象水底下的气泡一样逐渐向上冒。因为排序的过程中,各元素不断接近自己的位置,如果一趟比较下来没有进行过交换,就说明序列有序,因此要在排序过程中设置个标志flag判断元素是否进行过交换。从而减少不必要的比较。原
为月提笔_
·
2020-07-06 23:12
数据结构与算法(Java笔记15天)
文章目录
Java数据结构与算法
前言我常用的OJ网站我常看的算法书目录结束
Java数据结构与算法
前言源码:https://github.com/name365/Java-Data-structure如果是
subeiLY
·
2020-07-06 17:01
数据结构与算法(Java版)
Java数据结构与算法
day13 程序员十大常用算法
文章目录第十三章十大常用算法二分查找算法(非递归)分治算法动态规划算法KMP算法贪心算法普利姆算法克鲁斯卡尔算法克鲁斯卡尔算法介绍克鲁斯卡尔算法图解说明克鲁斯卡尔算法分析如何判断是否构成回路-举例说明?鲁斯卡尔算法的代码说明迪杰斯特拉算法(这个没怎么懂!!!)弗洛伊德算法回溯算法全劇終!!!第十三章十大常用算法本章源码:https://github.com/name365/Java-Data-st
subeiLY
·
2020-07-06 15:25
数据结构与算法(Java版)
算法
数据结构
java
简单排序算法(java实现)
简单排序算法(java实现)开始进行
java数据结构与算法
方面的学习,将所学过程记录下来以方便自己以后再次翻看,也希望能和同在学习的朋友们一起交流学习心得。
小明同学@zx
·
2020-07-06 04:03
Java数据结构与算法
解析(六)——AVL树
之前我们说过普通二叉查找树的删除算法会使得左子树比右子树深,因为我们总是用右子树的一个来代替删除的节点。会造成二叉查找树,严重的不平衡。AVL树简介而AVL树就是解决普通二叉查找树弊端的方法,他是带有平衡条件的二叉查找树,这个平衡条件必须容易保持,而且它保证树的深度必须是O(logN).AVL树是高度平衡的而二叉树。它的特点是:AVL树中任何节点的两个子树的高度最大差别为1。上面的两张图片,左边的
伯努力不努力
·
2020-07-05 16:45
数据结构与算法
java数据结构与算法
之手写队列的实现
packageArrayQueueDemo;importjava.util.Scanner;publicclassArrayQueueDemo{publicstaticvoidmain(String[]args){//测试一把//创建一个队列ArrayQueuequeue=newArrayQueue(30);charkey='';//接受用户的输入Scannerscanner=newScanner
Coder_Player
·
2020-07-05 09:24
数据结构与算法
Java数据结构与算法
之稀疏数组
1、稀疏数组定义稀疏数组(sparsearray)是一种只为数组中的非零元素分配内存的特殊类型数组,内存中存储了数组中非零元素的下标和值。2、稀疏数组与二维数组普通二维数组二维数组转稀疏数组后稀疏数组图解将二维数组转称稀疏数组之后,在稀疏数组中存储的是二维数组中所有非0(不一定是非0,在实际应用中,可能是数组中大量存在的并且分布没有规律的元素)元素的下标和值。稀疏数组的列数是固定的,只有3列:第一
Code Lee
·
2020-07-05 08:52
数据结构与算法-Java
Java数据结构与算法
-稀疏数组
publicclasssparseArray{publicstaticvoidmain(Stringargs[]){/*原始矩阵6*6000000020030000001000010000000000000*//*稀疏矩阵664(第一列记录原始二维数组的行列数和数组中的有效数据个数)112(有效数据所在的行、列和数值)143251341*/intarray[][]=newint[6][6];arr
Pipe Piper
·
2020-07-04 23:48
数据结构与算法
Java数据结构与算法
之杨辉三角
杨辉三角规则:杨辉三角规则:1.每一行的第一例为12.每一行的最后一列为13.当前数=上一个数+上一个数的前一个数packagecom.java.array;/***杨辉三角规则:*1.每一行的第一例为1*2.每一行的最后一列为1*3.当前数=上一个数+上一个数的前一个数*/publicclassYanghuiShanjiao{publicstaticvoidmain(String[]args){
魔舞清华
·
2020-07-04 16:45
数据结构与算法
Java数据结构与算法
:堆
1.堆的定义设有n个数据元素的关键字为(k0、k1、…、kn-1),如果它们满足以下的关系:ki=k2i+1且ki>=k2i+2)(i=0、1、…、(n-2)/2)则称之为堆(Heap)。如果将此数据元素序列用一维数组存储,并将此数组对应一棵完全二叉树,则堆的含义可以理解为:在完全二叉树中任何非终端结点的关键字均不大于(或不小于)其左、右孩子结点的关键字。下图(b)、(c)分别给出了最小堆和最大堆
Jack-Chan
·
2020-07-04 11:04
数据结构与算法
Java数据结构与算法
基础(一)概述与线性结构
Java数据结构与算法
基础(二)递归算法
Java数据结构与算法
基础(一)概述与线性结构学习目的:为了能更顺畅的读很多底层API代码和拓宽解决问题的思路一、数据结构概述1.数据结构是什么?
小土狗一只
·
2020-07-04 06:54
Java数据结构与算法基础
Java数据结构与算法
解析(十四)——二叉堆
二叉堆概述二叉堆是完全二元树或者是近似完全二元树,按照数据的排列方式可以分为两种:最大堆和最小堆。最大堆:父结点的键值总是大于或等于任何一个子节点的键值;最小堆:父结点的键值总是小于或等于任何一个子节点的键值。二叉堆一般都通过”数组”来实现,下面是数组实现的最大堆和最小堆的示意图:二叉堆的实现本实现以”最大堆”为例子来进行介绍。1.添加假设在最大堆[90,80,70,60,40,30,20,10,
伯努力不努力
·
2020-07-04 02:18
数据结构与算法
JAVA数据结构与算法
(四)树
JAVA数据结构与算法
(三)树定义树(Tree)是n(n≥0)个结点的有限集T,并且当n>0时满足下列条件:(1)有且仅有一个特定的称为根(Root)的结点;(2)当n>1时,其余结点可以划分为m(m>
Tong_Nan
·
2020-07-01 14:42
数据结构与算法
Java数据结构与算法
——快速排序(思路图解代码实现)(效率测试)
快速排序快速排序法介绍:快速排序是对冒泡排序的一种改进。基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。快排示意图解:代码实现及详细步骤说明:packagesort;importjava.text.SimpleDateFormat;im
为月提笔_
·
2020-07-01 12:02
书籍推荐:《
Java数据结构与算法
》
DataStructuresandAlgorithmsinJava(2ndEdition)没错,这本书的代码都是用Java写的。现在市面上关于数据结构和算法的书的描述语言一般是C、C++和Java,我只见过一本是C#的:《DataStructuresandAlgorithmswithObject-OrientedDesignPatternsinC#》,不过从名字也能看得出来,里面涉及了部分OO的内
weixin_33697898
·
2020-07-01 05:46
Java数据结构与算法
解析(四)——树的概述
树的基本概念树具有以下的特点:(01)每个节点有零个或多个子节点;(02)没有父节点的节点称为根节点;(03)每一个非根节点有且只有一个父节点;(04)除了根节点外,每个子节点可以分为多个不相交的子树。树的基本术语1.结点的度结点拥有的子树数称为结点的度。度为0的结点称为叶子结点或终端结点,度不为0的结点称为非终端结点或分支结点。除根结点以外,分支结点也称为内部结点。树的度是树内各结点的度的最大值
伯努力不努力
·
2020-07-01 05:19
数据结构与算法
堆排序以及Java实现
Java数据结构与算法
填坑什么是堆?
Ivanpp
·
2020-07-01 00:00
上一页
5
6
7
8
9
10
11
12
下一页
按字母分类:
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
其他