Informatica
Discussioni su argomenti di Informatica
Domande e risposte
Ordina per
In evidenza
dovrei cancellare la chiave 130, il problema è che è un nodo interno.
dovrei copiare il predecessore di 130 al posto di 130, e eliminare la foglia in cui c'era 100.
però poi mi ritrovo con un nodo con 2 chiavi e 2 figli invece di 3...
come devo fare?
Ragazzi ho un problema con questo esercizio in linguaggio C cosa sbaglio???
/*Scrivere una funzione in linguaggio C che utilizzando l'algoritmo del Bubble sort ordini*
*in modo decrescente un vettore di stringhe in funzione del valore del codice ASCII dell'*
*ultimo carattere.*/
#include
void bubble(char a[10]);
int main(void)
{
char a[10];
int i;
for(i = 0; i < 9; ++i){
scanf("%c", &a);
}
bubble(a);
return 0;
}
void bubble(char a[10])
{
int ...
premetto che stavolta ho letto piu testi e anche varie slide di algoritmi su google, ma continuo a non capire alcune cose:
Scansione lineare:
ho da inserire in una tabella di cardinalità 7 questi elementi: 7, 9, 16, 28, 15
la funzione hash è h(x) = n mod m
ora il mio dubbio è questo:
con la scansione lineare devo usare la funzione hash per ogni elemento o solo per il primo?
7 mod 7 = 0
9 mod 7 = 2
16 mod 7 = 2
Ciao ragazzi!
Ho un dubbio da un pò di tempo! Quando ho una funzione,e supponiamo che questa funzione debba restituirmi due valori,non posso fare così:
....
y= countxyz(i,l,z);
.....
Devo utilizzare i puntatori?
Cioè nel programma inserisco due variabili,e poi nella funzione sfrutto quelle variabili con i puntatori?
Ragazzi ho un problema con la compilazione,credo sia la funzione inserimento perché é l'ultima che scritto,anche se l'ho controllata..
#include "g.h"
G::G(){testa=NULL;}
G::~G(){elem*q;
for(q=testa;q!=NULL;q=q->pun){testa=testa->pun;
delete q;
delete[] q->codice;
q=testa;}
}
void G::inserisci(const char* ...
Ciao a tutti! la funzione che ho scritto al fondo fa parte di un programma per la gestione di una coda. Fino al primo "else" mi è tutto chiaro, ma poi questo:
(*tailPtr)->nextPtr = newPtr;
*tailPtr = newPtr;
mi crea confusione. Non riesco a capire cosa facciano esattamente queste due istruzioni, so che impostano un nuovo nodo come nodo finale della coda, ma non riesco a capire come.
Grazie in anticipo per le risposte!!
void enqueue(QUENODEPTR *headptr, QUEUENODEPTR ...
Ciao a tutti, non riesco a capire cosa voglia dire questa
istruzione:
*topPtr = (*topPtr)->nextPtr;
Studiando il C avevo visto cose tipo:
cPtr->data
oppure (*cPtr).data
ma non riesco a capire cosa significhi questa istruzione
che le combina.
Grazie in anticipo a chiunque provi a spiegarmelo!
salve a tutti, sono uno studente di ingegneria informatica. devo preparare l'esame di ingegneria del software e mi servirebbe un eserciziario o qualsiasi materiale che riguarda la risoluzione di esercizi inerenti: diagrammi delle classi, diagrammi delle sequenze, diagrammi dei casi d'uso, communication diagrams, diagrammi di stato, e soprattutto diagrammi delle attività. Qualcuno di voi mi sa aiutare per favore? grazie mille a chi mi aiuterà!
Salve a tutti, ho il seguente problema e vorrei trovare un algoritmo per risolverla :
Dati n oggetti ognuno con peso diverso, trovare un modo per distribuire
gli oggetti in j scatole (j
Ciao a tutti ,qualcuno sa spiegarmi che cosa significa questo errore??
grazie !!
...grazie al quale ho superato l' esame di Algoritmi.
Scusate questo post off-topic, dal titolo strambo, ma siccome come ben sapete sono molto attivo sul forum, e molti altri come me mi hanno aiutato ho il piacere di dedicare un post ai ringraziamenti. So che potrei farlo in privato ma vorrei condividere questa gioia con tutti e rendere nota la disponibilità di ham_burst. E' stato sempre attivo e disponibile nei vari interventi, aiutandomi soprattutto nelle equazioni di ricorrenza, la ...
Salve,
avendo questa ricorrenza:
$T(n) = {(1,if n=1),(4T(\sqrt(n)) + log_{2}^{2}(n),\text{other}):}$
di primo colpo, ho cercato cercato di risolverla con il metodo dell'albero, che è il metodo che più preferisco. Se arrivo ad un punto dove non si trova una soluzione subito, cambio ovviamente metodo.
Però in questo caso, vorrei chiedervi se è possibile arrivare ad una soluzione in qualche modo.
io sono arrivato fin qua, ipotizzando che $n in NN$ e $sqrt(n) in NN$:
$log_{2}^{2}(n) -> 4log_{2}^{2}(\sqrt(n)) -> 4^2log_{2}^{2}(n^{1/2^2}) -> ... -> 4^ilog_{2}^{2}(n^(1/2^i))=4^i(1/2^i)^2log_{2}^{2}(n)= log_{2}^{2}(n)-> ... -> ?$ (*)
ora arrivo ad un punto cieco, di solito con ...
ho questa equazione di ricorrenza e devo determinare la soluzione:
$\T(1) = c$
$\T(n) = 7T(n/2) + 18(n/2)^2$
come va risolta? con il teorema principale?
se si, come mi devo comportare con quel $\18(n/2)^2$?
sul mio testo è riportata solo la soluzione che è T(n) = O(n^(log base2 di 7))
*edit*
ho trovato un procedimento, ditemi se va bene:
$\T(1) = c$
$\T(n) = 7T(n/2) + 18(n/2)^2$
$\T(1) = c$
$\T(n) = 7T(n/2) + \Theta(n^2)$
a=7
b=2
d(b)=4
a>d(b) quindi T(n) = O(n^(logb di a)) e quindi O(n^(log2 di 7))
Salve,
sul Cormen viene riportato al capitolo 32.3 "String matching with Finite Automata" un algoritmo per lo string matching attravero gli automi a stati finiti.
Il cormen però non riporta chi è l'autore di questo algoritmo, non cita nulla se è usa DFA o NFA, e compagnia.
Voi sapete, in riferitmento agli algoritmi e alla terminologia del DragonBook, chi ha creato l'algoritmo riportato sul cormen e se utilizza DFA?
Ringrazio
Salve ,sono alle prese con il seguente esercizio :
calcolare il valore di (1/10 + 1/5) + 1/6 in F(2,4,-3,4) dove F è l'insieme dei numeri rappresentabili in aritmetica finita in base 2 .
Riporto lo svolgimento
1/10 = 0.11011*2^-3
1/5 = 0.110011*2^-2
1/6=0.101100*2^-2
Risultato : 0.1000*2^0=1/2
Ho capito l'artimetica f.p. e so operare in base 10 ma ho problemi per rappesentare in numeri in aritmetica di macchina ; ci sono diverse codifiche per rappresentare un numero in base 2 , qualche devo ...
Salve,
Ho questo problema, vorrei con il vostro aiuto formalizzare meglio ciò che pensavo, o sapere se può essere corretto.
Il problema è il seguente:
Un anagramma e una parola o frase ottenuta riarrangiando le lettere di un’altra parola o frase. Per esempio, ioccic e un anagrammadi ciccio. Senza spazi.
Si supponga di avere in input un vettore di $n$ stringhe di lunghezza massima $k$; si scriva un algoritmo che stampa in output tutte i gruppi di ...
Ciao a tutti qualcuno potrebbe spiegarmi ,il processo di cancellazione di una matrice dinamica??
In particolare vorrei sapere di preciso,cosa fanno quelle due istruzioni all'interno del for..
for(int i=0;i<n;i++){
delete[]matt[i];
delete[]matt;
}
grazie..
Ho bisogno del vostro aiuto!
Non so perché matlab non mi rappresenta più i numeri decimali.
Se digito ad esempio:
a=1125,32
Avrò:
a =1125
ans=32
Come mai? Come posso fare per rimediare?
Grazie dell'attenzione!
In un test ho trovato queste domande, vorrei chiedere un parere sulle mie risposte:
1)Se G è un grafo orientato con |V| n vertici implementato mediante liste di adiacenza, qual è il costo computazione per aggiungere un arco al grafo?
a)O(1)
b)O(V)
c)O(V+E)
d)O(E)
Secondo me è la b, perchè io se devo aggiungere un' arco ad un nodo devo trovarlo, e quindi scorro i vertici in tempo O(V), e poi inserisco in lista di adiacenza in testa il nodo adiacente per cui creo l' arco in tempo ...
ho questo esercizio, e sinceramente non so dove sbattere la testa visto che sul libro di testo non c'è un minimo accenno a come fare ciò, la traccia è:
dalla definizione di O dimostrare che T(n) = O(nlogn)
allora la definizione dice che:
T(n) = O(f(n)) se esistono due costanti positive c e n0 tali che n>n0 risulti T(n)< c f(n)
io con questa definizione come faccio a dimostrare che t(n) = O(nlogn) ?
qualche consiglio?