4.0栈和队列

第4章两三个栈和队列的应用,没敲完。挖坑,以后再填。

待完成:括号匹配的递归和迭代实现,求值算法。

 1 #include<iostream>
 2 #include<vector>
 3 using namespace std;
 4 void convert_1(vector<char>&S,int n,int base)
 5 {
 6      char digit[]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
 7      if(n>0)
 8      {
 9      
10      S.push_back(digit[n%base]);
11      convert_1(S,n/base,base);
12      }
13 }
14 void convert_2(vector<char>&S,int n,int base){
15       char digit[]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
16        int remainder;
17        while(n>0){
18          remainder=n%base;
19         S.push_back(digit[remainder]);
20         n=n/base;   
21        } 
22 }
23 int main()
24 {
25     //栈应用之进制转换--十进制正整数n转换为base进制
26     
27      vector<char> S;
28      int n,base;
29      cin>>n>>base; 
30      //递归实现 
31     // convert_1(S,n,base);
32      //迭代实现
33      convert_2(S,n,base);
34      int size=S.size();
35      for(int i=size-1;i>=0;i--){
36          cout<<S[i];}
37              
38     
39     return 0;
40 }

猜你喜欢

转载自www.cnblogs.com/wsshub/p/12378251.html