自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 中缀表达式转后缀表达式(代码实现及后缀表达式的计算)

中缀表达式转后缀表达式(代码实现及后缀表达式的计算)思路:1)初始化两个栈:运算符栈s1和储存中间结果的栈s2;2)从左到右扫描中缀表达式3)遇到操作数时,将其压入s2;4)遇到运算符时,比较其与s1栈顶运算符的优先级;​ 4.1如果s1为空,或栈顶运算符为左括号"(",则直接将此运算符入栈;​ 4.2否则,若优先级比栈顶运算符的高,也将运算符压入s1;​ 4.3否则,将s1栈顶的运算符弹出并压入到s2中,再次转入4.1与s1中新的栈顶运算符相比较;5)遇到括号时:(1)如果是左括号"(

2020-12-24 00:01:31 407 1

原创 逆波兰计算器

逆波兰表达式计算public class PolandNotation {public static void main(String[] args) {//逆波兰表达式//(3+4)*5-6 -》 3 4 + 5 * 6 -//为了方便,逆波兰表达式的数字和符号使用空格隔开String suffixExpression=“3 4 + 5 * 6 -”;//1.先将“3 4 + 5 * 6 -”放到ArrayList中//2.将ArrayList传递给一个方法,遍历ArrayList配合栈完

2020-12-04 15:58:48 80

原创 数组模拟栈并实现加减乘除运算

数组模拟栈并实现加减乘除运算1.通过一个index值,来遍历我们的表达式2.如果我们发现是一个数字,就直接入数栈3.如果发现扫描到是一个符号,分如下情况3.1如果发现当前符号栈为空,就直接入栈3.2如果符号栈有操作符,就进行比较,如果当前的操作符的优先级小于或者等于栈中的操作符,就需要从数栈中pop出两个数,再从符号栈中pop出一个符号,进行运算,将得到的结果,入数栈,然后将当前的操作符入符号栈。如果当前的操作符的优先级大于或者等于栈中的操作符,就直接入符号栈4.当表达式扫描完毕,就顺序的从数栈

2020-12-04 15:31:23 328

原创 Josephus(单项环形链表解决约瑟夫、约瑟夫问题)

Josephus(约瑟夫、约瑟夫问题)​ 问题来历:据说著名犹太历史学家Josephus有过以下的故事:在罗马人占领乔塔帕特后,39 个犹太人与Josephus及他的朋友躲到一个洞中,39个犹太人决定宁愿死也不要被敌人抓到,于是决定了一个自杀方式,41个人排成一个圆圈,由第1个人开始报数,每报数到第3人该人就必须自杀,然后再由下一个重新报数,直到所有人都自杀身亡为止。然而Josephus 和他的朋友并不想遵从。首先从一个人开始,越过k-2个人(因为第一个人已经被越过),并杀掉第k个人。接着,再越过k-1个

2020-11-24 19:41:27 355 2

原创 通过数组理解双向链表

双向链表结构图:分析双向链表的遍历,添加,修改,删除的操作思路​ 1)遍历和单链表一样,只是可以向前,也可以向后查找​ 2)添加(默认添加到双向链表的最后)​ (1)先找到双向链表的最后这个节点(temp为辅助指针)​ (2)temp.next=newHeroNode​ (3) newHeroNode.pre=temp​ 3)修改思路的原理和单向链表一样​ 4)删除​ (1)因为是双向链表,因此,我们可以实现自我删除这个节点​ (2)直接找到要删除的这个节点,比如temp​

2020-11-24 18:49:03 256

原创 通过数组模拟环形队列:

数组模拟环形队列:​ 思路:​ 1.front变量的含义:front就指向队列的第一个元素,也就是说arr[front]就是队列的第一个元素。front的初始值=0​ 2.rear变量的含义:rear指向队列的最后一个元素的后一个位置,因为空出一个空间作为预定。rear的初始值=0​ 3.当队列满时,条件是(rear+1)%maxSize==front​ 4.当队列为空的条件,rear==front​ 5.队列中有效的数据的古树(rear+maxSize-front)%m

2020-11-16 18:39:25 93

原创 通过数组理解链表

数组模拟链表此文章是通过数组来实现链表,主要帮助理解链表这一结构,若文中有错误之处,望指出,谢谢。一、链表(Linked List)​ 有序1的列表,内存存储如下:头指针地址Data域Next域150110a2170120a4160130140a6null150a1110160a5140170a3120如图总结:(1)链表是以节点的方式来存储,是链式存储。(2)每个节点包含data域,ne

2020-11-16 18:19:52 179 4

空空如也

空空如也

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

TA关注的人

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