forked from krishnamanojpvr/DSCPP
-
Notifications
You must be signed in to change notification settings - Fork 0
/
40_Reverse_Words_Stack.cpp
64 lines (54 loc) · 1 KB
/
40_Reverse_Words_Stack.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
#include<iostream>
using namespace std;
class Node2{
public:
string val;
Node2 * link;
Node2(string data){
val = data;
link = NULL;
}
};
class Stack{
Node2 * top;
public:
Stack(){
top = NULL;
}
void push(string);
Node2 * pop();
void display();
};
void Stack :: push(string val){
Node2 * temp = new Node2(val);
temp->link = top;
top = temp;
}
void Stack :: display(){
Node2 * temp = top;
while(temp != NULL){
cout << temp->val << " ";
temp = temp->link;
}
}
int main()
{
Stack S;
string sentence;
int count = 0;
string word = "";
getline(cin,sentence);
for(int i = 0; i<sentence.length() ; i++){
if(sentence[i] == ' '){
S.push(word);
word = "";
count ++;
}
else{
word = word + sentence[i];
}
}
S.push(word);
S.display();
return 0 ;
}