












Studia grazie alle numerose risorse presenti su Docsity
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Prepara i tuoi esami
Studia grazie alle numerose risorse presenti su Docsity
Prepara i tuoi esami con i documenti condivisi da studenti come te su Docsity
Trova i documenti specifici per gli esami della tua università
Preparati con lezioni e prove svolte basate sui programmi universitari!
Rispondi a reali domande d’esame e scopri la tua preparazione
Riassumi i tuoi documenti, fagli domande, convertili in quiz e mappe concettuali
Studia con prove svolte, tesine e consigli utili
Togliti ogni dubbio leggendo le risposte alle domande fatte da altri studenti come te
Esplora i documenti più scaricati per gli argomenti di studio più popolari
Ottieni i punti per scaricare
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
file di algoritmi informatici!
Tipologia: Esercizi
1 / 20
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!













↑
N
,
,
e 2.
,
ripetuta
: mam ...tm
quoziente
della divisione intera
nim
n
,
m
Efficienza
1 LEGGI n ,
m
Se no
.
=
.
2 n
= n-1 - Valdre di
N DECREMENTATO
DI 1
.
PERCHE UNA SOMMA Si È GIA FATTA
29
=
9
TORNO
A
9 -
4 .
STAMPA ne a FACCIAMO IN MODO CHE N SIA IL VALORE
temp = m Scambio
LO SCRIVO IN EFFICIENZA - m = n DI
-n =
Variabili
0
,
1
num max
a = 1
b= 3 C = 2
1
. LEGGI
n
leggere
.
num
->
leggo
4 .
3n= n - 1
asb 3 .ESE MAX = a 3. n = n
4
Si
No
a
Si
acc
b
No
b
1 .
Senso
ND
Si
C
NON
e Efficiente
C
LEGGI num
5
. STAMPO MAX
algoritmo
algoritmo
per
per
sommare i
. LEGGI n 0
. INIZIO
n numeri
= o
n
= 1
4
in
i
Somma = Somma
A
4
n
4 .
TORNA A 4
ALGORITMI RICORSIVI
in
di se
=
N NATURALI ALGORITMO PER IL CALCOLO Di
If
(n =
all
S
: 3
:
4 n
= n
. (n - 1)!
( elseh
4
E
: M ALGORITMO RICORSIVO PER LA CODIFICA BINARIA
RAR (nEIN ,
numero
If(n
< m) / If
(n = 1) (
n
. oh
3
essel
(
, quoziente)
= Rar(n-m ,
10
Ny. 2
4
, quoziente
4
GCD/Greatest
<
If
(n = 1)4 If
(m y n = 0 (
GCD (m,
n) = GCD(n
,
m
n)
3
:
4
else/ else If (m-nn)!
,
GCDR (m-n ,
n) ,
)
h
GCDR (n ,
m-n)
,
mem)
If
(m yn = 0 &
n , 4
Eese
,
n)
: nem
ALGORITMI
PATIVI
Ripetizione
dello stesso procedimento
GCD/Greatest
G CDI (nE ,
numero
,
> numero eIN
(m
= n
no)
If
(m
= n ;
temp
= m-n ;
n
= my n
;
m
= n
;
m
=
;
4
n
=
4 returnm
(
m = m
n ;
= o
arresta su valori co
arresta su valorico
neg
if
(cerconeg
trovato n = false
While
(neg
&d
not
trovaton)
if
(b(neg)
= d
neg
trovato n = tre
If (neg
n -
b(k)
=
(neg)
neg
k
neg
= false
Else
svolgo
stessa cosa
per
positivo
trovato p
=
false
While (pos
&& (not
trovato
if
(v (
pos)
-d)
pos ++
trovato
p
= tre
If
(pos
n -
b(k)
=
pos)
pos
k
neg
=
true
I vi = n di numeri
,
algoritmo
che restituisce
sua
duniforme
se
ogni
compared-volte
,
,
,
,
8 ,
8
,
6 ,
,
d = 3
i
= 0
dei valori nel vettore
e
while (i
< n-
La
v
j
inizio fine
If
(n % d
return
=
fine-inizio
uniforme-true
while /uniforme And fine n
If
(V (inizio)
U(fine)
uniforme
=
false
-If
(fine-1 AND UCfine)
= u(fine
e)
uniforme
= false
else
inizio
=
fine
fine
= inizio + d-
u
If (uniforme
=
false
stampa
Else
stampa
ALGORITMIR-CORI
Search /testa puntatore , k
puntatore
Insert
, jintero ,
>
trovato =falso If (j
=
testa P
While (not trovato and successivo fol
I I successivo. numero =
trovato : true Else
. ptore)
return successivo
For (i = 1 , ij
,
i+ + )
ptore
DeleteP I testa puntatore , jnumerol
> puntatore precedente
.
=
If
(j
. ptore
=
testa .
ptore
successivo - testa
For
,
,
precedente
. ptore
precedente
. ptore
return testa
ALGORITMI
PIA
VUOTA
Empty1)
>
>numero
&
No
: altrimenti If(T=
I
If
l'underflow
di
ogni
1 return (SIT+ 1)
= e
PILA VUOTA
Empty1)
>
> numero
=
p)
I
p
. ptore
= Testo
l'underflow
usa
di
ogni
=
: testa . info
testa : testa
. ptore
return
temp
ALGORITMI ALBERI
:
(r
:
Jf(r
Jf(r
Jf(r
puntato
r
DFPR (r .
puntato
(r .
(r .
puntato
DFAI (r puntatore) DFSI /r puntatore) DFPI (r puntatore)
If
(r
If
(r
If
(r
, false
IsEmpty(l)
IsEmpty(l)
IsEmpty(l)
u = S
,
.
If (n
If (bool If
le
le
If
If
.
.
,
,
,
If
.
Sx +
Depth If
.
Sx +
,
F
= First -S.
.
,
false) -S.
.
,
false)
If
. enqueue(r)
While (NOT c.
IsEmpty
denqueue()
"
If
.
.
If
.
.
puntato
r ESERCIZIO 3 11/06/19 altezza iterativa
un
algoritmo
puntato
puntatore
contenente K IPOTESI
:
SearchR(r
puntatore ,
>
puntatore
Ir puntatore)
If
or
r . info
=
o
return S . push
,
.
IsEmpty
temp
= SearchR(r. sx ,
,
. pop
If /temp + d) If
>
return Search
.
,
h
Else If(
u
return temp S.
Push
,
If
.
.
Push (u .
,
return altezza
Esercizio
: dato un albero puntato Esercizio
:
puntato
Esercizio :
un albero puntato
algoritmo
algoritmo
algoritmo
restituisce
foglie
restituisce
restituisce l'altezza
Foglie
>
puntatore)
:
puntatore) :numero
ff(r
If(r
Jf (r
or (r
. SX = 0 And
return o
return o return o
If
=
.
=
1
return (
.
max/Altezza
(r
,
(r . dx))
(Foglie
. Sx)
Foglie
.
numero
puntatore)
-> numero
If
If
= Nulli
Creturn
o
Creturn
o
Lreturn
(LCIRCr .
.
dx) + Numeronodicri)
(return (LCIRCr+ 2x numeronodicr) +
ESERCIZI ALBERI
Esercizio Dati 2 attraversamenti ricostruire l'albero .
Soluzioni possibili
:
I ;
I
!
E
I I
.
,
,
8 ,
,
,
,
,
,
7
in
,
,
,
,
8 ,
4
,
,
,
,
,
,
SX
i
d
↓
X
I
P
Simmetrico 2 .
.
,
,
,
,
,
,
,
,
7 ↓
1 posticipato
,
8 6
,
5 ,
,
,
,
,
,
,
co
i
: a ,
,
,
,
e
,
,
c ,
f
,
,
m
,
r ,
s ,
g
,
n ,
o A
,
,
c
,
,
e ,
fig
,
,
,
,
,
n ,
,
r
,
'd
d'è
n'é'
e
mi
Esercizio : Inserire le
seguenti
chiavi
albero AVL
inizialmente visto
,
,
,
,
,
,
,
,
,
,
,
sposto
tutto
a
=
1
I
= non
19
va
perno
fanno
due
figlio
di
Ott 12
14
=
=
1
o
/
sullo
↓
faccio
un
, svolgo
una doppia
rotazione
=
12
=
23
=
1
14
62
= a628i
62
primi
10 elementi
X
Esercizio fornire
una permutazione
41 ,
7
,
,
,
,
,
,
,
,
,
, 694
ogni
in un
AVI, partendo
quello
vuoto , se effettui
rotazioni
E
elemento Colo
metto a de
↑
(asx
non cambiaval
⑤T
·
effettuo
le rotazioni
39
, quindi
mettere a sx o a di
a
·
il 50
%
%
o
20
&
almeno
compie
o ↑
40
/X
·
inserisco
sotto 30
o
ste
,
20 go
Io
il 4 °,
fa
3
/pe
to
go
20
ROTAZIONI
/
%
40
·
inserisco
40 ·
inserisco e'8e
40
sole e
faccio
sole ·
10
Rotazione
10
o 30
2010
zze
%
· 30
bo 'o
40
·
°
sull'
°
percheSetinsere e
e
1
is
so
o
interno e quindi
fa
I
(
og
Una
·
.
/
o
%
ge
36
10
10 g
.
Ivan
,
main
,
E E
,
max
If(min
= =
max
=
E
min
n
;
(j
= 0
, j
< n
, j
3
9
If (VE)Vet))
S
S
Enclider (n,
3
V(j
= max
3
3
Y
int main (EuclideR(((
S
(k
= 0
,
< n
,
9
scauf ("id" ,
mi ;
,
If (V(K V(k
+))
If (man
S S
V(k+1)
,
n)
3
3
Y &
=
,
m)
media-max
3
(*d ,
4
Partition
,
intf) QuickSort 11
inf
If
f)
perno
=
pos
=
partition
(i, f)
=
f
, pos-1)
finito
= false QuickSort(pos
,
f)
while
(finito
= false)
Merge
intm
,
intf)
inf
While
(inff
~(inf)perno j
= m
j
=
f)
While
(v(sup)
= perno If
sj)
If /inf
<
temp
=
= elinf
(inf)
= temp
v(j)
j
finito-true k
t = perno If(i
= m
=
For
j,
= f ,
v(j)
return sup Else
For(t= i
,
,
1
c (t) =
for/tinizio ,
tef ,