摘要:
//用两个栈实现队列的功能//假设有两个栈s1与s2,则s1保存刚刚入队的元素,若需出队且s2为空,则将s1所有元素压入s2(此时s2中元素顺序为元素入队顺序),然后取出s2栈顶即可,若s2非空(此时s2中元素为s1之前压入,其栈顶就是最早入队的元素),则直接取出s2的栈顶。template cla... 阅读全文
摘要:
//写一个算法将栈里的元素升序排列。栈的实现未知,算法只能借助栈完成,可使用的函数有push,pop,top,empty等//可借助另外一个栈来完成排序,思想是从原始栈里依次弹出元素放入辅助栈,每当将要压入的元素使得辅助栈不是升序排列,就将辅助栈里的元素重新压入原始栈,直到辅助栈里的元素都小于当前将... 阅读全文
摘要:
//一棵二叉树每个结点包含一个整数,请设计一个算法输出所有满足条件的路径:此路径上的所有结点之和等于给定值。注意此类路径不要求必须从根节点开始void printBuffer(vector buffer, int level, int i1){ for (int i=level;i buffe... 阅读全文