自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 栈 -- 以及用栈实现计算器

7. 栈情景带入:​ 给定一串字符串"7*2*2-5+1-5+3-3",求出字符串的结果7.1 栈的介绍栈的英文是(stack)栈是一个先进后出(FILO - First In Last Out)的有序列表栈(stack)是限制线性表中元素的插入和删除,只能在线性表的同一端进行的特殊线性表,允许插入和删除的一端,为变化的一端,称为栈顶(Top),另一端为固定的一端,称为栈底(Bottom)根据定义可知,最先放入栈中元素在栈底,最后放入栈中元素在栈顶,而删除元素刚好相反,最后放入的元素最先删除

2021-07-31 15:12:43 293

原创 约瑟夫问题(Java单向链表解决)

6.4 Josephu约瑟夫问题josephu问题为:设编号为1、2、… n 的 n 个人围坐一圈,约定编号为 k (1 <= k <= n)的人从 1 开始报数,数到 m 的那个人出列,他的下一位又从 1 开始报数,数到 m 的那个人又出列,依此类推,直到所有人出列位置,由此产生一个出队编号的序列。假设 n = 5; k = 1; m = 2; 那么出来的队列顺序就是 2 - 4 - 1 - 5 - 3(使用单项环形链表完成,也可以使用数组取模完成)构建一个单向环形链表先创建第一个节

2021-07-30 21:07:18 83

原创 双向链表笔记

6.3 双向链表建议参考上一篇博客单向链表,一起看单项链表的缺点分析:单向链表,查找的方向只能是一个方向,而双向链表可以向前或者向后单向链表不能进行自我删除,需要靠辅助节点,而双向链表,则可以自我删除,所以前面我们单向链表删除时,总是找到temp, temp是待删除节点的前一个节点双向链表与单向链表相似,但是多了一个指向前一个节点的指针分析:遍历方法和单链表相似,只是可以向前,也可以向后查找添加(默认添加到双向链表的最后)先找到双向链表的最后这个节点temp.next = new

2021-07-30 19:06:10 67

原创 单链表练习题

单链表练习(方便起见,使用下面这个链表)注释部分就是练习题所在位置public class SingleLinkedListDemo { public static void main(String[] args) { SingleLinkedList s1 = new SingleLinkedList(); Node n1 = new Node(1,"xiao"); Node n2 = new Node(2,"biao"); N

2021-07-30 14:27:01 240

原创 队列——用数组实现队列,环形队列

队列队列是个有序列表,可以用数组或者链表来实现遵循先入先出的原则,即先存入队列的数据,要先取出,后存入的要后取出示意图(使用数组模拟队列示意图)5.1 数组模拟队列队列是有序列表,若使用数组的结构来存储队列的数据,则队列数组的声明如上图,其中maxSize 是该队列的最大容量因为队列的输出,输入时分别从前后端来处理的,因此需要两个变量front和rear分别记录队列前后端的下标,front随着数据输出而改变,而rear随着数据输入而改变当我们将数据存入队列时成为addQueu

2021-07-29 20:44:17 111

原创 String常用方法

String 常用方法字符串的比较Equals(String Object)进行相等的判断,大小写区分EqualslsIgnore(String String)进行相等判断,不区分大小写CompareTo(String String)判断两个字符串大小,按照字符编码比较/ =0 表示相等 / >0 表示大于的结果 / <0 表示小于的结果字符串的查找Contains(String s)判断内容是否存在IndexOf()由前

2021-07-28 16:30:58 52

原创 大学实训项目--学生社团管理系统

介绍这是一个大学小组实训做的项目,使用ssm框架,使用5个表完成分权限登录(不同的菜单,对应不同的权限,不同的权限,对应不同的角色,不同的角色对应不同的用户),使用Echars完成统计分析功能,以及各种增删改查。下载地址代码地址...

2021-07-28 09:20:36 341 1

原创 单向列表的创建,修改,删除,遍历

链表(Linked List)链表(Linked List)介绍[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yvkLRTkH-1627356346583)(链表是以字节的方式来存储,链式存储每个字节包含data域:存储数据,next域:指向下一个节点如图,发现链表的各个节点不一定是连续存放的(连续存储),而且是无序的链表分为带头结点的链表,和没有头结点的链表,根据需求决定单链表(逻辑结构示意图)head(头节点):不存放具体的数据作用就是表示

2021-07-27 11:27:19 452

原创 计数排序Java

package data_structure;import java.util.Arrays;public class CountSort { public static void main(String[] args) { int[] arr = {3,44,38,5,47,15,36,26,27,2,46,4,19,50,48}; int[] result = sort(arr); System.out.println(Arrays.toS

2021-07-26 20:22:49 121

原创 基数排序——不使用比较进行的排序

package data_structure;import java.util.Arrays;// 基数排序public class RadixSort { public static void main(String[] args) { int[] arr = {53, 3, 542, 748, 14, 214}; radixSort(arr); } // 基数排序方法 public static void radixSort(

2021-07-26 20:14:26 301

原创 堆排序算法笔记

强烈推荐,不懂就去看package data_structure;import java.util.Arrays;// 堆排序public class HeapSort { public static void main(String[] args) { int[] arr = {3,44,38,5,47,15,36,26,27,2,46,4,19,50,48}; HeapSort heapSort = new HeapSort(); he

2021-07-24 15:35:20 44

原创 螺旋矩阵Java版

package think_about;import java.util.Scanner;// 螺旋矩阵/* 1 2 3 8 9 4 7 6 5 做着做着差点忘了,二维数组第一位数横着的,第二个下标才是竖着的 */public class RotationMatrix { static Scanner scanner = new Scanner(System.in); public static void main(String[]

2021-07-24 15:03:14 252

原创 关于switch中的default里面的break是否可以省略这件事

关于default后面的break是否可以省略这是正常情况下的defaul中写着break情况:这是default去掉break情况下的结果可以看出来并没有什么区别,那么是否可以省略呢?答案是不一定,具体要看default要在什么位置上,如果在顶部,那么当default运行的时候就像case语句一样,如果没有break,就会一直不停的向下运行,一直到遇到break。总结switch 中的 default 里面的break,可以根据 default 所在的位置决定,如果在switch顶部的话

2021-07-24 15:02:15 6890

原创 归并排序_java代码

前言归并排序,其实不难,捋清楚思路,把握他的核心思想:先分组后排序。以下是我的个人理解和实现,希望对读者有帮助。个人理解我认为的归并排序,就是先分组后排序,具体来说,分组 就是给你一个数组,你把它分组,分成每个元素都是一个组,例如:8个人,编号是从0~7,那么我们就把他们分成8组,然后在进行归并。关于这部分的实现:我用的是递归,就是我代码中的msort归并:在分组完成的基础上,我们要将这些组合并起来,从 8 个组变成 1 个组,就完成了归并。采用的方式是两两比较,拿第一个组的第一个元素,和第二组

2021-07-24 10:52:27 49

原创 十大排序——选择排序(参考:菜鸟教程)

选择排序表现最稳定的排序算法之一,因为无论什么数据进去都是O(n2)的时间复杂度,所以用到它的时候,数据规模越小越好。唯一的好处可能就是不用占用额外的内存空间了吧。理论上讲,选择排序可能也是平时排序一般人想到的最多排序方法了吧。选择排序(Select_sort)是一种简单直观的排序算法。它的工作原理,首先在未排序序列中找到最小(大)的元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,知道所有元素均排序完毕。算法描述:n个记录的直接选

2021-07-23 15:17:22 742

原创 冒泡排序(使用异化交换两个数的值)(Bubble Sort)

冒泡排序冒泡排序是一种简单的排序算法。它重复地走访过要排序的数列,依次比较两个元素,如果他们的属性错误就把它们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字又来是因为越小的元素会经由交换慢慢”浮“到数列的顶端。算法描述:*比较相邻的元素。如果第一个比第二个大,就交换它们两个。*对每一对相邻元素同样的工作,从开始第一对到结尾的最后一对,这样在最后的元素应该会是最大的数。*针对所有元素重复以上的步骤,除了最后一个。*重复步骤1~3,直到排序

2021-07-22 19:28:35 198

原创 为自己制作的web项目加上点击特效和可爱的看板娘

点击特效<%--放进jsp里可以直接使用--%><script type="text/javascript"> /* x7blog.com 爱心特效 */ !function (e, t, a) { function r() {for (var e = 0; e < s.length; e++) s[e].alpha <= 0 ? (t.body.removeChild(s[e].el), s.splice(e, 1)) : (s[e]

2021-07-21 19:52:54 242

原创 MYSQL面试题(一)

1. MySQL InnoDB, Mysaim的特点InnoDB:支持事务处理支持外键支持行锁不支持FULLTEXT类型索引(MySQL5.6已引入)不保存表的具体行数,扫描表来计算有多少行对于AUTO_INCREMENT类型的字段,必须包含只有该字段的索引DELETE表时,是一行一行的删除InnoDB把数据和索引存放在表空间里面跨平台可直接拷贝使用表格很难被压缩MyISAM:不支持事务,回滚将造成不完全回滚,不具有原子性不支持外键支持全文搜索保存表的具体行数,不带

2021-07-21 19:41:04 79

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除