mirror of
https://github.com/TheAlgorithms/C-Plus-Plus.git
synced 2026-02-03 18:46:50 +08:00
* Modified search/text_search.cpp * Added tests * Added a few test cases * Added a few more test cases and documentation * Minor fix * Minor fixes * Minor fixes * Minor output fixes * Minor output fixes * Minor readability fixes * clang-format and clang-tidy fixes fora01765a6* Restored original settings * clang-format and clang-tidy fixes for6a8f3a4eCo-authored-by: github-actions <${GITHUB_ACTOR}@users.noreply.github.com> Co-authored-by: David Leal <halfpacho@gmail.com>
67 lines
1.3 KiB
C++
67 lines
1.3 KiB
C++
#include <iostream>
|
|
|
|
struct node {
|
|
int val;
|
|
node *next;
|
|
};
|
|
|
|
node *top_var;
|
|
|
|
void push(int x) {
|
|
node *n = new node;
|
|
n->val = x;
|
|
n->next = top_var;
|
|
top_var = n;
|
|
}
|
|
|
|
void pop() {
|
|
if (top_var == nullptr) {
|
|
std::cout << "\nUnderflow";
|
|
} else {
|
|
node *t = top_var;
|
|
std::cout << "\n" << t->val << " deleted";
|
|
top_var = top_var->next;
|
|
delete t;
|
|
}
|
|
}
|
|
|
|
void show() {
|
|
node *t = top_var;
|
|
while (t != nullptr) {
|
|
std::cout << t->val << "\n";
|
|
t = t->next;
|
|
}
|
|
}
|
|
|
|
int main() {
|
|
int ch = 0, x = 0;
|
|
do {
|
|
std::cout << "\n0. Exit or Ctrl+C";
|
|
std::cout << "\n1. Push";
|
|
std::cout << "\n2. Pop";
|
|
std::cout << "\n3. Print";
|
|
std::cout << "\nEnter Your Choice: ";
|
|
std::cin >> ch;
|
|
switch (ch) {
|
|
case 0:
|
|
break;
|
|
case 1:
|
|
std::cout << "\nInsert : ";
|
|
std::cin >> x;
|
|
push(x);
|
|
break;
|
|
case 2:
|
|
pop();
|
|
break;
|
|
case 3:
|
|
show();
|
|
break;
|
|
default:
|
|
std::cout << "Invalid option!\n";
|
|
break;
|
|
}
|
|
} while (ch != 0);
|
|
|
|
return 0;
|
|
}
|