用栈来辅助每个幂的递推
查看原帖
用栈来辅助每个幂的递推
1376411
Rosemary_X楼主2024/8/30 21:37

用快速幂的方法将每个对应幂压入栈中,符合先入先出的遍历顺序,用栈来辅助递归。

while(!num.empty()) {
	if(num.top() == 1) {
		cout << 2;
		num.pop();
		if(!num.empty()) cout << '+';
	} else if(num.top() == 0) {
		cout << "2(0)";
		num.pop();
	} else {
		cout << "2(";
		f(num.top());
		cout << ')';
		num.pop();
		if(!num.empty()) cout << '+';
	}
}
2024/8/30 21:37
加载中...