栈
文章平均质量分 62
dengmsjava
这个作者很懒,什么都没留下…
展开
-
【数据结构】递归解决八皇后问题
递归解决八皇后问题(1) 第一个皇后先放第一行第一列;(2) 第二个皇后放在第二行第一列、然后判断是否OK, 如果不OK,继续放在第二列、第三列、依次把所有列都放完,找到一个合适;(3) 继续第三个皇后,还是第一列、第二列……直到第8个皇后也能放在一个不冲突的位置,算是找到了一个正确解;(4) 当得到一个正确解时,在栈回退到上一个栈时,就会开始回溯,即将第一个皇后,放到第一列的所有正确解,全部得到;(5) 然后回头继续第一个皇后放第二列,后面继续循环执行 1,2,3,4的步骤。原创 2022-05-17 20:14:46 · 838 阅读 · 0 评论 -
【数据结构】递归解决迷宫问题
递归解决迷宫问题采用策略:下-》右-》上-》左和策略:右-》上-》左-》下,小球走过的路径最短,最短路径步数为9步原创 2022-05-17 16:55:22 · 3173 阅读 · 0 评论 -
【数据结构】栈实现综合计算器
1.通过一个index值(索引),来遍历表达式;2.如果发现是一个数字,就直接入数栈;3.如果发现扫描到是一个符号,就分如下情况:①如果发现当前的符号栈为空,就直接入栈;②如果符号栈有操作符,就进行比较,如果当前的操作符的优先级小于或者等于栈中的操作符,就需要从数栈中pop出两个数,在从符号栈中pop出一个符号,进行运算,将得到结果入数栈,然后将当前的操作符入符号栈;如果当前的操作符的优先级大于栈中的操作符,就直接入符号栈。4.当表达式扫描完毕,就顺序的从数栈和符号栈中pop出相应的数和符号,并运原创 2022-05-14 13:07:20 · 515 阅读 · 0 评论 -
【数据结构】栈的基本介绍、应用场景以及用数组模拟栈的使用
栈的基本介绍、应用场景以及用数组模拟栈的使用(1) 栈是一个先入后出(First In Last Out, FILO)的有序列表;(2) 栈是限制线性表中元素的插入和删除只能在线性表的同一端进行的一种特殊线性表。允许插入和删除的一端,为变化的一端,称为栈顶;另一端为固定的一端,称为栈底;(3) 最先放入栈中元素在栈底,最后放入的元素在栈顶;删除元素刚好相反,最后放入的元素最先删除,最先放入的元素最后删除;(4) 入栈(push);(5) 出栈(pop);原创 2022-05-13 20:07:18 · 787 阅读 · 0 评论