www.det365

堆叠顺序为1234。堆叠顺序是什么?

全部展开
一共有4种类型的24个元素,并且堆栈要求与您最后输入的内容和最先获取的内容一致。根据此比例,它们是:1234√,1243√,1324√,1342√,1423×,1432√,2134√,2143√,2314√,2341√,2413×,2431√,3124×,3142√,3214√,3241√,3412x,3421√,4123x,4132x,4213x,4231x,4312x,4321√。
14种可能性,10种不可能。
扩展数据堆栈的典型应用包括算术检查和背包问题。实际上,电池可以解决符合后进先出原则的问题。
1.在算术表达式中检查括号范围的有效性检查括号的范围是一个典型的堆栈示例。
需要从以下两个方面考虑对算术表达式中使用的正确括号的验证:1)左右括号的数量必须相同。2)每个左括号必须具有匹配的右括号。
算法思想:验证括号范围的原理是从左到右扫描表达式。
如果找到左括号,则将左括号推向堆栈。找到正确的括号后,首先将堆栈中的顶部元素从堆栈中删除,然后将弹出窗口与正确的括号进行比较。否则,将检测到操作错误。
2.背包问题:假设将n个高质量的零件分配给w1和w2。
可以携带Wwn物品和T物品的总质量的背包将从装入背包中的n物品中取出几件物品,以便所选物品的总质量恰好等于最大质量。您可以选择。背包可以充电。即wi1 + wi2 +。
+ wik =T。
如果可能,可以解决背包问题。否则,没有解决方案。
算法思想:首先,顺序排列n个元素,然后依次选择它们。如果背包中物品的总质量未超过装入物品后背包的最大装载质量,则将其装入(拉出)。选择下一个项目进行测试,直到已加载的项目总数达到背包的最高充电质量为止。
此时,请把整个背包拿走。
如果装有多个物品的背包没有装满,并且背包中没有其他物品可供选择,并且背包中有不合格物品,请从背包中取出最后一个装载的物品您必须选择物品(不能堆叠)下载并重复此过程,直到背包装满(有解决方案)或没有更多物品可用(没有解决方案)为止。
具体实现:建立矩阵权重[1。
N],堆栈[1,N]分别存储背包中装载的物品重量和物品编号,MaxW表示背包的最大装载量。
每次堆叠物品时,都会从MaxW中扣除该物品的质量,而我就是所选物品的序列号。
如果MaxW-weight[i]= 0,则该项为可选。对于MaxW-weight[i]0,该项目不是选项,并且如果在内部,则必须将其堆叠。如果电池没电,则无法解决。
参考资料来源:百度百科-插入堆栈


上一篇:这是罪恶的悲伤和悲伤的秘密吗? 下一篇:没有了
www.det365