gpt4 book ai didi

c++ - 按升序对堆栈进行排序? (仅使用 3 个堆栈)

转载 作者:太空宇宙 更新时间:2023-11-04 16:12:25 25 4
gpt4 key购买 nike

所以我正在为 CompSci 2 做一些家庭作业,作业要求我们使用 3 个堆栈按升序对单个堆栈(五个数字)进行排序 - 很像汉诺塔问题- 但是对于是否可以将较大的数字放在较小的数字上等没有规则。

我本质上是想弄清楚如何根据堆栈中的另一个数字对任何数字进行排序的过程,但我有点不知所措 - 在尝试制定一个想法时我想到了这个:我可以从堆栈中弹出顶部数字,将其放入另一个堆栈(例如,堆栈 3),将其与原始堆栈中的下一个数字进行比较,如果小于它,我会将堆栈 3 中的数字放入堆栈 2。但后来我遇到了顺序问题——如果数字小于它后面的数字,但小于堆栈中的另一个数字,我的最终结果将是乱序的。

有人可以帮我找出最有效的方法吗?

最佳答案

我建议将堆栈 1 和堆栈 2 一起用作可遍历列表,然后使用堆栈 3 作为临时保留应用冒泡排序。

关于c++ - 按升序对堆栈进行排序? (仅使用 3 个堆栈),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26986117/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com