Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
U
uff-Atividades-pilha-fila
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Alan de Oliveira
uff-Atividades-pilha-fila
Commits
6a0fe149
Commit
6a0fe149
authored
May 19, 2022
by
Alan de Oliveira
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Finalização exercicio 6
parent
82dd2492
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
157 additions
and
11 deletions
+157
-11
exercicio6.cpp
exercicio6.cpp
+157
-11
No files found.
exercicio6.cpp
View file @
6a0fe149
#include <iostream>
template
<
class
T
>
class
Pilha
Min
{
class
Pilha
{
public
:
void
empilha
(
T
elemento
)
{
...
...
@@ -24,21 +24,42 @@ class PilhaMin {
else
return
-
1
;
}
private
:
static
const
int
MAX
=
900
;
int
N
=
0
;
T
elementos
[
MAX
];
};
template
<
class
T
>
class
PilhaMin
{
public
:
void
empilha
(
T
elemento
)
{
T
min
=
elemento
;
if
(
pilhamin
.
topo
()
!=
-
1
&&
min
>
pilhamin
.
topo
())
min
=
pilhamin
.
topo
();
pilha
.
empilha
(
elemento
);
pilhamin
.
empilha
(
min
);
T
obterMinimo
()
{
T
*
minimo
=
&
elementos
[
0
];
for
(
int
i
=
1
;
i
<
N
;
i
++
)
{
if
(
elementos
[
i
]
<
*
(
minimo
))
minimo
=
&
elementos
[
i
];
}
void
desempilha
()
{
pilha
.
desempilha
();
pilhamin
.
desempilha
();
}
return
*
(
minimo
);
T
topo
()
{
return
pilha
.
topo
();
}
T
obterMinimo
()
{
return
pilhamin
.
topo
();
}
private
:
static
const
int
MAX
=
900
;
int
N
=
0
;
T
elementos
[
MAX
]
;
Pilha
<
T
>
pilha
;
Pilha
<
T
>
pilhamin
;
};
...
...
@@ -58,7 +79,6 @@ void preencherPilha(PilhaMin<char> &pilha) {
pilha
.
empilha
(
'l'
);
pilha
.
empilha
(
'm'
);
pilha
.
empilha
(
'a'
);
pilha
.
empilha
(
'1'
);
pilha
.
empilha
(
'n'
);
pilha
.
empilha
(
'o'
);
pilha
.
empilha
(
'p'
);
...
...
@@ -70,6 +90,7 @@ void preencherPilha(PilhaMin<char> &pilha) {
pilha
.
empilha
(
'v'
);
pilha
.
empilha
(
'w'
);
pilha
.
empilha
(
'x'
);
pilha
.
empilha
(
'1'
);
pilha
.
empilha
(
'y'
);
pilha
.
empilha
(
'z'
);
}
...
...
@@ -83,6 +104,130 @@ int main(int argc, char* argv[]) {
preencherPilha
(
pilha
);
std
::
cout
<<
"Mínimo: "
<<
pilha
.
obterMinimo
()
<<
std
::
endl
;
std
::
cout
<<
"Desempilhando o : "
<<
pilha
.
topo
()
<<
std
::
endl
;
pilha
.
desempilha
();
std
::
cout
<<
"Mínimo: "
<<
pilha
.
obterMinimo
()
<<
std
::
endl
;
std
::
cout
<<
"Desempilhando o : "
<<
pilha
.
topo
()
<<
std
::
endl
;
pilha
.
desempilha
();
std
::
cout
<<
"Mínimo: "
<<
pilha
.
obterMinimo
()
<<
std
::
endl
;
std
::
cout
<<
"Desempilhando o : "
<<
pilha
.
topo
()
<<
std
::
endl
;
pilha
.
desempilha
();
std
::
cout
<<
"Mínimo: "
<<
pilha
.
obterMinimo
()
<<
std
::
endl
;
std
::
cout
<<
"Desempilhando o : "
<<
pilha
.
topo
()
<<
std
::
endl
;
pilha
.
desempilha
();
std
::
cout
<<
"Mínimo: "
<<
pilha
.
obterMinimo
()
<<
std
::
endl
;
std
::
cout
<<
"Desempilhando o : "
<<
pilha
.
topo
()
<<
std
::
endl
;
pilha
.
desempilha
();
std
::
cout
<<
"Mínimo: "
<<
pilha
.
obterMinimo
()
<<
std
::
endl
;
std
::
cout
<<
"Desempilhando o : "
<<
pilha
.
topo
()
<<
std
::
endl
;
pilha
.
desempilha
();
std
::
cout
<<
"Mínimo: "
<<
pilha
.
obterMinimo
()
<<
std
::
endl
;
std
::
cout
<<
"Desempilhando o : "
<<
pilha
.
topo
()
<<
std
::
endl
;
pilha
.
desempilha
();
std
::
cout
<<
"Mínimo: "
<<
pilha
.
obterMinimo
()
<<
std
::
endl
;
std
::
cout
<<
"Desempilhando o : "
<<
pilha
.
topo
()
<<
std
::
endl
;
pilha
.
desempilha
();
std
::
cout
<<
"Mínimo: "
<<
pilha
.
obterMinimo
()
<<
std
::
endl
;
std
::
cout
<<
"Desempilhando o : "
<<
pilha
.
topo
()
<<
std
::
endl
;
pilha
.
desempilha
();
std
::
cout
<<
"Mínimo: "
<<
pilha
.
obterMinimo
()
<<
std
::
endl
;
std
::
cout
<<
"Desempilhando o : "
<<
pilha
.
topo
()
<<
std
::
endl
;
pilha
.
desempilha
();
std
::
cout
<<
"Mínimo: "
<<
pilha
.
obterMinimo
()
<<
std
::
endl
;
std
::
cout
<<
"Desempilhando o : "
<<
pilha
.
topo
()
<<
std
::
endl
;
pilha
.
desempilha
();
std
::
cout
<<
"Mínimo: "
<<
pilha
.
obterMinimo
()
<<
std
::
endl
;
std
::
cout
<<
"Desempilhando o : "
<<
pilha
.
topo
()
<<
std
::
endl
;
pilha
.
desempilha
();
std
::
cout
<<
"Mínimo: "
<<
pilha
.
obterMinimo
()
<<
std
::
endl
;
std
::
cout
<<
"Desempilhando o : "
<<
pilha
.
topo
()
<<
std
::
endl
;
pilha
.
desempilha
();
std
::
cout
<<
"Mínimo: "
<<
pilha
.
obterMinimo
()
<<
std
::
endl
;
std
::
cout
<<
"Desempilhando o : "
<<
pilha
.
topo
()
<<
std
::
endl
;
pilha
.
desempilha
();
std
::
cout
<<
"Mínimo: "
<<
pilha
.
obterMinimo
()
<<
std
::
endl
;
std
::
cout
<<
"Desempilhando o : "
<<
pilha
.
topo
()
<<
std
::
endl
;
pilha
.
desempilha
();
std
::
cout
<<
"Mínimo: "
<<
pilha
.
obterMinimo
()
<<
std
::
endl
;
std
::
cout
<<
"Desempilhando o : "
<<
pilha
.
topo
()
<<
std
::
endl
;
pilha
.
desempilha
();
std
::
cout
<<
"Mínimo: "
<<
pilha
.
obterMinimo
()
<<
std
::
endl
;
std
::
cout
<<
"Desempilhando o : "
<<
pilha
.
topo
()
<<
std
::
endl
;
pilha
.
desempilha
();
std
::
cout
<<
"Mínimo: "
<<
pilha
.
obterMinimo
()
<<
std
::
endl
;
std
::
cout
<<
"Desempilhando o : "
<<
pilha
.
topo
()
<<
std
::
endl
;
pilha
.
desempilha
();
std
::
cout
<<
"Mínimo: "
<<
pilha
.
obterMinimo
()
<<
std
::
endl
;
std
::
cout
<<
"Desempilhando o : "
<<
pilha
.
topo
()
<<
std
::
endl
;
pilha
.
desempilha
();
std
::
cout
<<
"Mínimo: "
<<
pilha
.
obterMinimo
()
<<
std
::
endl
;
std
::
cout
<<
"Desempilhando o : "
<<
pilha
.
topo
()
<<
std
::
endl
;
pilha
.
desempilha
();
std
::
cout
<<
"Mínimo: "
<<
pilha
.
obterMinimo
()
<<
std
::
endl
;
std
::
cout
<<
"Desempilhando o : "
<<
pilha
.
topo
()
<<
std
::
endl
;
pilha
.
desempilha
();
std
::
cout
<<
"Mínimo: "
<<
pilha
.
obterMinimo
()
<<
std
::
endl
;
std
::
cout
<<
"Desempilhando o : "
<<
pilha
.
topo
()
<<
std
::
endl
;
pilha
.
desempilha
();
std
::
cout
<<
"Mínimo: "
<<
pilha
.
obterMinimo
()
<<
std
::
endl
;
std
::
cout
<<
"Desempilhando o : "
<<
pilha
.
topo
()
<<
std
::
endl
;
pilha
.
desempilha
();
std
::
cout
<<
"Mínimo: "
<<
pilha
.
obterMinimo
()
<<
std
::
endl
;
std
::
cout
<<
"Desempilhando o : "
<<
pilha
.
topo
()
<<
std
::
endl
;
pilha
.
desempilha
();
std
::
cout
<<
"Mínimo: "
<<
pilha
.
obterMinimo
()
<<
std
::
endl
;
std
::
cout
<<
"Desempilhando o : "
<<
pilha
.
topo
()
<<
std
::
endl
;
pilha
.
desempilha
();
std
::
cout
<<
"Mínimo: "
<<
pilha
.
obterMinimo
()
<<
std
::
endl
;
std
::
cout
<<
"Desempilhando o : "
<<
pilha
.
topo
()
<<
std
::
endl
;
pilha
.
desempilha
();
std
::
cout
<<
"Mínimo: "
<<
pilha
.
obterMinimo
()
<<
std
::
endl
;
std
::
cout
<<
"Desempilhando o : "
<<
pilha
.
topo
()
<<
std
::
endl
;
pilha
.
desempilha
();
std
::
cout
<<
"Mínimo: "
<<
pilha
.
obterMinimo
()
<<
std
::
endl
;
return
0
;
}
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment