- 博客(28)
- 收藏
- 关注
原创 数据结构+算法--快速排序
快速排序快速排序法介绍快速排序法的示意图快速排序法的应用实例代码实现快速排序法介绍快速排序法的示意图快速排序法的应用实例代码实现import java.text.SimpleDateFormat;import java.util.Arrays;import java.util.Date;public class QuickSort4 { public static void main(String[] args) {// int[] arr = {-9,78
2021-02-19 12:53:45
126
原创 数据结构+算法--希尔排序
希尔排序简单插入排序存在的问题希尔排序算法介绍希尔排序算法基本思想希尔排序法的示意图希尔排序法的应用实例代码实现(本次采用移位法)简单插入排序存在的问题希尔排序算法介绍希尔排序算法基本思想希尔排序法的示意图希尔排序法的应用实例代码实现(本次采用移位法)import java.text.SimpleDateFormat;import java.util.Arrays;import java.util.Date;public class ShellSort { publ
2021-02-17 11:33:54
127
原创 数据结构+算法--插入排序
选择排序基本介绍选择排序的思想选择排序思路分析图选择排序应用实例代码实现基本介绍选择排序的思想选择排序思路分析图选择排序应用实例代码实现import java.text.SimpleDateFormat;import java.util.Arrays;import java.util.Date;public class SelectSort { public static void main(String[] args) {// int[] arr =
2021-02-06 09:48:23
77
原创 数据结构+算法--选择排序
选择排序基本介绍选择排序的思想选择排序思路分析图选择排序应用实例代码实现基本介绍选择排序的思想选择排序思路分析图选择排序应用实例代码实现import java.text.SimpleDateFormat;import java.util.Arrays;import java.util.Date;public class SelectSort { public static void main(String[] args) {// int[] arr =
2021-02-02 16:05:09
79
原创 数据结构+算法--冒泡排序(代码优化)
冒泡排序基本介绍优化演示冒泡排序的过程冒泡排序的规则代码实现基本介绍优化演示冒泡排序的过程冒泡排序的规则代码实现import java.text.SimpleDateFormat;import java.util.Arrays;import java.util.Date;public class BubbleSort { public static void main(String[] args) {// int[] arr = {3, 9, -1,
2021-02-02 13:03:29
117
原创 数据结构+算法--排序算法 持续更新中,春节不打烊
排序算法排序算法的介绍排序的分类算法的时间复杂度时间频度时间复杂度的介绍计算时间复杂度的方法常见的时间复杂度平均时间复杂度和最坏时间复杂度算法的空间复杂度排序算法的介绍排序的分类算法的时间复杂度时间频度时间频度的三个特点:温馨提示:当为立方阶时,前面的系数不能忽略时间复杂度的介绍计算时间复杂度的方法常见的时间复杂度平均时间复杂度和最坏时间复杂度算法的空间复杂度...
2021-02-01 23:11:02
67
原创 数据结构+算法--八皇后问题分析和实现(递归回溯)
八皇后问题八皇后问题介绍思路代码实现八皇后问题介绍思路温馨提示:如果在给第n个皇后找位置时,发现放置的所有位置都和其他皇后相互攻击,则就要回退到上一个皇后,调整一下上一个皇后的位置,判断一下,如果上一个皇后和前面的皇后都不相互攻击,又可以开始进入下一个皇后的摆放了(即刚刚找不到位置放的第n个皇后)。代码实现public class Queue8 { //定义一个max表示共有多少个皇后 int max = 8; //定义数组array,保存皇后放置位置的结果,比如ar
2021-01-30 12:28:06
160
原创 数据结构+算法--迷宫回溯问题分析和实现(递归回溯)
迷宫回溯问题思路代码实现思路上图中代码的执行策略是:下->右->上->左代码实现public class MiGong { public static void main(String[] args) { //先创建一个二维数组 模拟迷宫 //地图 int[][] map = new int[8][7]; //使用1表示墙 //上下全部置为1 for(int i = 0;
2021-01-28 23:02:40
202
1
原创 数据结构+算法--递归
递归递归应用场景递归的概念递归的调用机制递归能解决什么样的问题递归要遵守的重要规则代码实现递归应用场景递归的概念递归的调用机制打印问题递归实现图解递归能解决什么样的问题递归要遵守的重要规则代码实现...
2021-01-28 22:46:06
78
原创 数据结构+算法--中缀表达式 转 后缀表达式
中缀表达式 转 后缀表达式思路代码实现思路代码实现import java.util.*;public class PolandNotation { public static void main(String[] args) { //完成将一个 中缀表达式 转换成 后缀表达式 的功能 //说明 //1. 表达式str="1+((2+3)*4)-5" => 转换成 1 2 3 + 4 * + 5 - //2. 因为直
2021-01-18 13:40:37
297
原创 数据结构+算法--逆波兰计算器分析与实现(后缀表达式)
逆波兰计算器分析与实现中缀表达式前缀表达式后缀表达式逆波兰计算器实现思路(后缀表达式)代码实现中缀表达式前缀表达式后缀表达式逆波兰计算器实现思路(后缀表达式)详细思路请参考上面 后缀表达式的计算机求值代码实现import java.util.ArrayList;import java.util.List;import java.util.Stack;public class PolandNotation { public static void main(Strin
2021-01-16 21:14:06
168
原创 数据结构+算法--栈实现综合计算器(目前仅限于+,-,*,/)
栈实现综合计算器基于栈的计算器实现思路代码实现基于栈的计算器实现思路温馨提示:代码中有更加详细的步骤说明代码实现public class Calculator { public static void main(String[] args) { //完成表达式的计算 String expression = "7*2*2-5+1-5+3-4/2"; //创建两个栈,一个数栈,一个符号栈 ArrayStack2 numStac
2021-01-16 13:24:42
128
原创 数据结构+算法--数组模拟栈
数组模拟栈栈的应用场景栈的介绍栈的其他应用场景数组模拟栈的思路分析代码实现栈的应用场景栈的介绍栈的其他应用场景数组模拟栈的思路分析代码实现import java.util.Scanner;public class ArrayStackDemo { public static void main(String[] args) { ArrayStack arrayStack = new ArrayStack(5); boolean tag =
2021-01-16 13:11:51
84
原创 数据结构+算法--环形链表的创建和遍历 与 约瑟夫问题的解决
单向环形链表&约瑟夫问题什么是单向环形链表单向环形链表的创建和遍历约瑟夫问题约瑟夫问题解题思路代码实现什么是单向环形链表单向环形链表的创建和遍历约瑟夫问题约瑟夫问题解题思路以下代码约瑟夫问题解决思路与上图解决思路有一点点区别,区别:1步骤应该改为“需要创建一个辅助指针(变量)helper,事先应该让helper指向序号为 startNo的小孩节点 的 前一个节点;再让first指向序号为 startNo的小孩节点。”代码实现import java.util.Scanner;
2021-01-12 21:51:59
109
原创 数据结构+算法--双向链表的增删改查(含双向链表按顺序插入节点)
双向链表的增删改查思路代码实现思路代码实现import java.util.Scanner;public class DoubleLinkedListDemo { public static void main(String[] args) { DoubleLinkedList doubleLinkedList = new DoubleLinkedList(); boolean tar = true; while(tar){
2021-01-09 21:47:30
138
原创 数据结构+算法--从尾到头打印单链表(反向遍历)
从尾到头打印单链表(反向遍历)思路代码实现(代码中的reversePrint方法)思路代码实现(代码中的reversePrint方法)import java.util.Scanner;import java.util.Stack;public class SingleLinkedListDemo { public static void main(String[] args) { SingleLinkedList singleLinkedList = new Si
2021-01-08 20:09:14
476
原创 数据结构+算法--单链表的反转
单链表的反转思路代码实现(代码中的reverse方法)思路效果图:过程分析:代码实现(代码中的reverse方法)import java.util.Scanner;import java.util.Stack;public class SingleLinkedListDemo { public static void main(String[] args) { SingleLinkedList singleLinkedList = new Singl
2021-01-08 19:50:39
100
原创 数据结构+算法--查找单链表中的倒数第k个节点
查找单链表中的倒数第k个节点思路代码实现(代码中的findLastIndexNode方法)思路1.编写一个方法,接收head节点,同时接收一个index2.index表示是倒数第index个节点3.先把链表从头到尾遍历,得到链表的总的长度 getLength4.得到size后,我们从链表的第一个开始遍历(size-index)个,就可以得到要查找的节点5.如果找到了,则打印该节点代码实现(代码中的findLastIndexNode方法)import java.util.Scanner;im
2021-01-08 19:26:00
623
原创 数据结构+算法--求单链表中有效节点的个数
求单链表中有效节点的个数思路代码实现(代码中的getLeng方法)思路直接遍历单链表,详情请看代码实现代码实现(代码中的getLeng方法)import java.util.Scanner;public class SingleLinkedListDemo { public static void main(String[] args) { SingleLinkedList singleLinkedList = new SingleLinkedList();
2021-01-08 19:10:01
1266
原创 数据结构+算法--单链表节点的删除
单链表节点的删除思路代码实现(单链表节点的删除)思路代码实现(单链表节点的删除)import java.util.Scanner;public class SingleLinkedListDemo { public static void main(String[] args) { SingleLinkedList singleLinkedList = new SingleLinkedList(); boolean tar = true;
2021-01-07 10:25:31
856
原创 数据结构+算法--单链表节点的修改
单链表节点的修改思路代码实现(单链表节点的修改)思路修改链表节点信息,根据英雄的no编号来修改,即no编号不能改代码实现(单链表节点的修改)import java.util.Scanner;public class SingleLinkedListDemo { public static void main(String[] args) { SingleLinkedList singleLinkedList = new SingleLinkedList();
2021-01-06 22:24:31
450
原创 数据结构+算法--单链表按顺序插入节点
单链表按顺序插入节点思路代码实现(单链表按顺序插入节点)思路注意: 因为该链表为单链表,所以我们找的temp 是位于添加位置的前一个节点,否则插入不了代码实现(单链表按顺序插入节点)import java.util.Scanner;public class SingleLinkedListDemo { public static void main(String[] args) { SingleLinkedList singleLinkedList = new Si
2021-01-06 16:12:58
345
原创 数据结构--单链表的创建和遍历(代码优化)
代码优化(基于上一篇博客“数据结构–单链表的创建和遍历”)本次优化主要体现在add方法和list方法上import java.util.Scanner;//单向链表优化public class CircleLinkedListDemo2 { public static void main(String[] args) { SingleLinkedList2 singleLinkedList = new SingleLinkedList2(); boolean
2021-01-05 12:21:31
413
2
原创 数据结构--单链表的创建和遍历
单链表链表介绍代码实现(单链表的创建和遍历)链表介绍代码实现(单链表的创建和遍历)import java.util.Scanner;public class SingleLinkedListDemo { public static void main(String[] args) { SingleLinkedList singleLinkedList = new SingleLinkedList(); boolean tar = true;
2021-01-05 12:11:01
1115
原创 数据结构--数组模拟环形队列
环形队列数组模拟 环形队列 思路分析代码实现数组模拟 环形队列 思路分析该文章主要解决上一篇博客(数据结构–数组模拟队列)留下来的队列不能重复使用的问题代码实现import java.util.Scanner;public class CircleArrayQueueDemo { public static void main(String[] args) { //说明:设置maxSize为3,其队列的有效数据最大是2,原因:要空出一个空间作为约定 C
2021-01-02 22:09:51
89
原创 数据结构--数组模拟队列
队列什么是队列队列的性质队列的操作代码实现队列(数组模拟队列)什么是队列现实生活中,经常可以看到队列的例子,如排队买票,先来的人买了票,先离开,后面来的只有等前面离开后,才能买票离开,队列就是类似排队买票的一种数据结构。队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。队列的性质先进先出(FIFO),先进来的先出去,跟栈的区别,栈是先进
2020-12-31 22:04:04
100
原创 数据结构--稀疏数组
这里写自定义目录标题数据结构--稀疏数组什么是稀疏数组稀疏数组有什么作用二维数组转化为稀疏数组&稀疏数组恢复为原来的二维数组数据结构–稀疏数组什么是稀疏数组当一个数组大部分元素为0,或者为同一个值的数组时,可以使用稀释数组来保存该数组。稀疏数组有什么作用五子棋相信大家都玩过吧!那么下面就以五子棋为列子跟大家谈谈稀疏数组的作用。那么大家有没有想过五子棋是如何进行保存的磁盘中的呢?又是如何从磁盘中读取呢?这个我想大家都会想到二维数组。确实使用二维数组可以,但这样会造成内存资源的浪费。不妨,我们
2020-12-30 21:10:58
111
原创 SpringMVC+Spring+Mybatis工作原理总结
SpringMVCSpringMVC…SpringSpring…MybatisMybatis…
2020-06-08 17:51:07
159
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人