编程3:仅用递归函数和栈操作逆序一个栈
生活随笔
收集整理的這篇文章主要介紹了
编程3:仅用递归函数和栈操作逆序一个栈
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
<?php
header("content-type:text/html;charset=utf-8");
/** 僅用遞歸函數和棧操作逆序一個棧 P8*/function getAndRemoveLastElement(SplStack $stack){if($stack->isEmpty()){return false;}$value = $stack->pop();if($stack->isEmpty()){return $value;}else{$last = getAndRemoveLastElement($stack);$stack->push($value);return $last;}
}function reverse(SplStack $stack){if($stack->isEmpty()){return false;}else{$value = getAndRemoveLastElement($stack);reverse($stack);$stack->push($value);}
}echo "原棧:";
echo "</br>";
$stack = new SplStack();
$stack->push(1);
$stack->push(7);
$stack->push(0);
$stack->push(2);
print_r($stack);
echo "</br>";echo "逆序后的棧:";
echo "</br>";
reverse($stack);
print_r($stack);
輸出結果:
?
轉載于:https://www.cnblogs.com/xlzfdddd/p/10021886.html
總結
以上是生活随笔為你收集整理的编程3:仅用递归函数和栈操作逆序一个栈的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: FutureTask的使用
- 下一篇: 【java学习笔记】浅析JavaWeb开